sql语句练习

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),不能用于计算或表达式;









  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值