*叶的SQL学习:
1.SELECT:(A 表名,a 字段)
SELECT A.b, C.c , D.d(a,b,c,d,e...各种自己需要的字段)
FROM A(中心表名)
LEFT /INNER/RIGHT JOIN B ON A.b=B.b (A表和B表公用的字段 a)
LEFT/INNER/RIGHT JOIN C ON A.c = C.c
LEFT/INNER/RIGHT JOIN D ON A.C=D.d
ORDER BY A.b, C.c , D.d
2. GROUP BY
GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组。
比如:字段:a,b,c 对C进行计数(MIN.MAX,SUM...)
则:可以 GROUP BY:a,b
举例:
SELECT A.b, MIN(C.c) , D.d(a,b,c,d,e...各种自己需要的字段)
FROM A
LEFT JOIN B ON A.b=B.b (A表和B表公用的字段 a)
LEFT JOIN C ON A.c = C.c
LEFT JOIN D ON A.C=D.d
GROUP BY A.b, D.d
3.WHERE ~ and ~ or
WHERE 用于为满足条件,指定标准的记录。
举例:
SELECT A.b, MIN(C.c) , D.d(a,b,c,d,e...各种自己需要的字段)
FROM A
LEFT JOIN B ON A.b=B.b (A表和B表公用的字段 a)
LEFT JOIN C ON A.c = C.c
LEFT JOIN D ON A.C=D.d
where A.b = '**' and B.b like '%**' or C.c >'**'
GROUP BY A.b, D.d
运算符 | 描述 |
---|---|
= | 等于 |
<> | 不等于。注释:在 SQL 的一些版本中,该操作符可被写成 != |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
BETWEEN | 在某个范围内 |
LIKE | 搜索某种模式 |
IN | 指定针对某个列的多个可能值 |
4. TO CHAR & HAVING
4.1 其它格式转化为字符串,一般我用 TO CHAR:日期转化为字符串。来搜索某些数据,拉取想要的日期区间。
如下:因我用了GROUP BY 所以不能直接 WHERE TO CHAR。但是这里是可以用 HAVING 。
4.1.1
4.1.2