kindring 3 سال پیش
والد
کامیت
d3f1fae49a
1فایلهای تغییر یافته به همراه39 افزوده شده و 0 حذف شده
  1. 39 0
      mysql/技巧学习.md

+ 39 - 0
mysql/技巧学习.md

@@ -0,0 +1,39 @@
+# 查询相关
+## 连表查询
+### 统计相关(关联统计数量)
+> b表为售出的表情况,a表记录了总数量,现在需要查询指定商品2的售出情况.应该为 0/33
+1. 关联表数据查询
+2. 表结构
+a表字段数据
+| id | total | 
+| --- | --- |
+| 1 | 23 |
+| 2 | 33 |
+b表字段数据
+| aId |
+| 1 |
+| 1 |
+| 1 | 
+> 查询思路,使用`count`函数进行查询,count中会统计所有非null的值,所以判断后应该将false转换为null
+```sql
+# 查询1
+select ff.*,count(aId = 1 or null) as pay
+from 
+(select total from a where id = 1) as ff,
+b;
+# 查询2
+select ff.*,count(aId = 2 or null) as pay
+from 
+(select total from a where id = 2) as ff,
+b;
+```
+查询相关结果
+1.结果1
+| total | pay |
+| --- | --- |
+| 23 | 3 |
+
+2.结果2
+| total | pay |
+| --- | --- |
+| 33 | 0 |