distinct 明显的,清楚的;卓越的,不寻常的;有区别的;确切的;
offset 偏移;
desc [计][WIN]降序;
creteria 标准;
filter 滤波器;
RegExp .正则表达式;表达式对象;
binary 双重的;
1. SQL 语句是不区分大小写的,在MYsql4.1之后数据库名、表名、列名是不区分大小写的,而且其中的所有空格都将被忽视;
2. 检索不同的行用DISTINCT关键字(它应用于所有的列(分别作用于两列),而不是他前面的列),除非指定的两个列都不相同,否则所有行都将被检索出来;
3. 限制结果使用LIMIT,他的第一行为0行, LIMIT 5(表示返回结果限制为5行), LIMIT 5,5 (表示返回结果为从行5【也就是实际的第6行】开始的5行);如果没有足够的行数,返回最多的行数;LIMIT 3,4 的另一种表示方法为LIMIT 4 OFFSET 3 :从行3开始取4行;
4. 使用完全限定的表名来引用列 SELECT products.prod_name FROM crashcourse.products;
5. 排序数据使用关键词为ORDER BY(默认是升续的), 如果想要降续排列,使用关键词DESC(放在列后,只对本列使用),如果想使多个列进行降续排列要在每个列后使用DESC;ORDER BY 关键词位于FROM 之后,如果使用LIMIT,他必须位于ORDER BY 之后;
6. WHERE字句关键词, WHERE子句的操作符"<>"为不等于,范围查找使用BETWEEN a AND b ;IS NULL 检查列为空的字段;
7. 组合子句AND 操作符 和 OR 操作符, 它俩都是配合WHERE子句进行使用的,且AND 的优先级高于OR。 IN 操作符用来制定范围,范围内的每个条件都可以用来匹配;如IN(1002,1003),且IN操作符一般比OR更快;
8. LIKE操作符,配合通配符使用;‘%’表示任何字符出现任意次数,包括0次,但是他不匹配NULL;
下划线‘_’通配符,只匹配单个字符;
9. 正则表达式,用来匹配文本的特殊的串;使用REGEXP关键字,他后面跟的为正则表达式;‘.’它表示匹配任意一个字符;
注意:LIKE 与REGEXP之间的一个重要差别,LIKE 是需要匹配整个列,而REGEXP在列值中进行匹配,如果找到它就将相应的行返回;
‘|’表示为搜索其中的一个串,类似于OR,‘1|2|3 Ton’,表示的1or2or3 Ton;
“[123]”匹配任意单一字符,"[^123]" 表示匹配出去这些字符外的任何东西;
“[0123456789]”可以简化为“[0-9]”,"[a-z]"也是合法的;
为了匹配特殊字符,可以使用\\加持,eg:查找字符‘|’使用方式为“\\|”;
元字符转义
\\f flip 换页
\\n newline 换行
\\r return 回车
\\t tab 制表
\\v vertically 纵向制表
使用双斜杠\\为转义的原因:MYSQL自己解释一个,正则表达式库解释另一个;
重复元字符:
* 0个或多个匹配
+ 1个或多个,等于{1,};
? 0个或1个匹配(等于{0,1})
{n} 指定数目匹配
{n,} 不少于指定数目匹配
{n,m} 匹配数目的范围(m不超过255)
定位元字符f
^ 文本的开始
$ 文本的结尾
[[:<:]] 词的开始
[[:>:]] 词的结尾f
使用^开始$结束,可以使REGEXP的作用与LIKE一样;
10 字段:基本上与列的意思相同;
拼接: 将值联结到一起构成的单个值;使用函数Concat(),来拼接两个列;(大多的dbms使用‘+’或者“||”来实现拼接的);
多个串使用逗号隔开;
执行算术计算: 对检索出来的数据进行算术计算,每一列为一个计算字段;
11 数据处理函数:RTrim()、Upper()、SOUNDEX(语音类似的字母数字模式算法,模糊搜索);
日期处理函数: 常用的几个AddDate(增加一个日期天或周等) 、addtime(增加一个时间时、分等),Date(显示日期部分)、time(显示时间部分)、year(返回一个日期的年份);
MYSQL支持两位数字的年份;
12 聚集函数,AVG()返回某列的平均值,COUNT()返回某列的行数、MAX()返回某列的最大值、MIN()、SUM(返回某列之和);
基本上都忽略NULL的行,除了COUNT()特定的行;
COUNT(*):计算所有的行,包括NULL;
可以使用DISTINCT参数,但是不可以使用COUNT(DISTINCT),不能用于计算或表达式;