--获取表中的所有数据 select * from table_name --all是默认选项,能够不写,指表中全部列下的数据, --ditinct 从显示中去重复记录 select [ * | all | ditinct column1,column2] from table1 [ ,table2];
--用于规定选作的标准/条件 --select 列名称 from 表名称 where 列 运算符 值 select * from table_name where column_name = 'value'
--多个条件用and/or链接 select [ all | * distinct column1,column2 ] from table1 [ ,table2 ] where [condition1 | expression1 ] [ and | or condition2 | expression2 ]
and和or可在where子语句中把两个或者多个条件结合起来sql
若是一个条件和第二个条件都成立,用and数据库
若是一个条件和第二个条件只要有一个成立,则or运算符显示一条记录express
select * from table_name where column_name1 = 'value' and column_name2 <= 'value' select * from table_name where column_name1 = 'value' or column_name2 <= 'value' --把and和or结合起来使用,用圆括号组成复杂的表达式 --先知足括号内任一的条件,而后再考虑and部分条件 select * from table_name where (column_name1 = 'value' or column_name2 <= 'value') and column_name3 = 'value'
用于对结果集进行排序,默认是按照升序(ASC),按照降序能够写(DESC)关键字函数
selcet column_name1,column_name2 from table_name order by column_name1 DESC,column_name2 ASC --order by 句子里的字段能够缩写为一个整数,用整数取代世纪的字段名,表示字段在关键字SELECT以后列表里的位置 --如将上述内容进行更改 selcet column_name1,column_name2 from table_name order by 1 DESC,2 ASC
注:code
一、排序排序
a、SQL排序是基于字符的ASCII排序,get
b、数字0-9会按其字符值进行排序,而且位于字母A到Z以前it
c、因为数字值在排序是被单字符处理的,因此数字的排序是:一、十二、二、25五、3io
二、大小写敏感性table
SQL命令和关键字对大小写不敏感,可是在 数据大小写敏感性很重要,
a、MySQL、Microsoft SQL Sever,默认是大小写不敏感的,在数据匹配时,系统会忽视数据的大小写
b、Oracle 默认是对大小写敏感的,因此在匹配数据时须要考虑大小写
在大多数状况下,数据在关系型数据库中彷佛都是以大写的形式保存的,以便保持数据的一致性
--COUNT圆括号中表示目标字段,了解该列有多少条记录,*表明全部记录 SELECT COUNT(*) FROM TABLE_NAME --若是要在统计表中特定列所出现的值的种类数(返回指定字段的不一样值数据),须要在COUNT函数中使用DISTINCT关键字 SELECT COUNT(DISTINCT column_name) FROM TABLE_NAME 注:COUNT(DISTINCT)适用于ORACLE和Microsoft SQL Server,但没法用于Microsoft Access