大量查询SQL语句 实例

时间:2024-03-02 07:38:59
1、查看表结构语句:DESC   表名
 
2、查询所有列:select  *  from  表名
 
3、查询指定列:select  字段名  form  表名
 
4、查询指定行:SELECT * from 表名 WHERE 字段名=值
 
5、模糊查询:SELECT * from 表名 WHERE 字段名 LIKE "%要查询的值%"     //%表示一个或多个字符,_表示一个字符
 
6、在where条件中使用 in:SELECT * from 表名 WHERE 字段名 in (\'要查询的值\',\'要查询的值\')
 
7、查询字段内容为空/非空:SELECT  * FROM 表名 WHERE 字段名 IS/IS NOT NULL;
 
8、使用逻辑操作符:SELECT  * FROM 表名 WHERE (字段名=\'值\' OR 字段名=\'值\') AND 字段名 LIKE \'%要查询的值%\';
 
9、将查询结果按字段的值进行排序:SELECT  * FROM 表名 ORDER BY 字段 DESC
 
10、查询数据的、最大说、最小数、平均值、和:SELECT MAX(字段名),MIN(字段名),AVG(字段名),SUM(字段名) from 表名
 
11、查询数据表中某一字段值最大的数据:SELECT * FROM 表名 where 字段名=(SELECT MAX(字段名) from 表名));
 
12、查询数据表中的总条数:SELECT COUNT(*) FROM 表名
 
13、group by(用于分组) 查出相同分组:SELECT 字段 FROM 表名 GROUP BY 字段;
 
14、having(用于用于限制分组显示结果):SELECT 字段  FROM 表名 group by 字段  having AVG(字段)<200;
 
15、自连接(同一张表的链接查询) :select * from `exam` AS a,`exam` AS b,`exam` AS c where a.id=b.id and a.class=\' 语文\' and b.class=\'数学\' and c.class=\'历史\'
 
16、子查询:
                单行子查询 : SELECT ename FROM emp WHERE deptno=(SELECT deptno FROM emp where ename=\'SMITH\');
             多行子查询 : SELECT ename,job,sal,deptno from emp WHERE job IN (SELECT DISTINCT job FROM emp WHERE deptno=10);