表单查询
1.单表查询
SELECT colum_name1,colum_name2,...
FROM table1_name
[WHERE conditional_express1,conditional_express2,...]
[GROUP BY conditional_express1,conditional_express2,...[ASC|DESC]]
[LIMIT [OFFSET] data_num]
1.条件查询
where 后跟条件表达式,条件表达式是由字段名、关系运算符和数据,如
SELECT * FROM table1_name WHERE colum_name = data1;
带 in 表达式:
SELECT * FROM table1_name WHERE colum_name1 [NOT] IN (data1,data2,...);
带between and
SELECT * FROM table1_name WHERE colum_name BETWEEN data1 AND data2;
带 is null
SELECT * FROM table1_name WHERE colum_name IS NULL;
带 distinct【去重】
SELECT DISTINCT colum_name FROM table1_name;
带like运算符【其中通配符 %代表任意多个字符,_代表任意一个字符,若字符里包含%和下划线可用\转义】
SELECT * FROM table1_name WHERE colum LIKE '%_';
带and或or查询
SELECT * FROM table1_name WHERE colum_name = data AND colum_name1 = data1;
SELECT * FROM table1_name WHERE colum_name = data OR colum_name1 = data1;
2.聚合函数查询
用 min()、max()、avg()、count()、sum() 进行查询
SELECT def(colum_name) FROM table1_name;
3.排序查询【asc升序】
SELECT * FROM table1_name [WHERE] ORDER BY colum_name1,colum_name2,...[ASC/DESC];
4.分组查询
SELECT * FROM table1_name GROUP BY colum_name [HAVING def() = colum_data];
5.限制数量查询
SELECT * FROM table_name LIMIT [start_num,]colum_num;
2.多表查询
1.内连接
SELECT * FROM table1_name JOIN table2_name ON table1_name.colum_name = table2_name.colum_name;
2.左(右)连接
SELECT * FROM table1_name [LEFT/RIGHT]JOIN table2_name ON table1_name.colum_name = table2_name.colum_name;