MySQL必知必会学习笔记.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MySQL必知必会学习笔记

MySQL必知必会学习笔记 sql在处理or操作之前,优先处理and操作符。 案例: select * from products where vend_id=1002 or vend_id=1003 and prod_price=10 处理过程 select * from products where vend_id=1002 or (vend_id=1003 and prod_price=10) 建议:在使用多个or 或and 语句的时候使用()来避免歧义。 in 操作符跟or的作用相同,但是: in的语法比or更简洁;in 比or执行速度快;in里面还可以包含其他select语句。 通配符效率很低,必须要用的话也不要放在where的最前面 在MySQL中使用正则表达式。 like会匹配整个列,若果被匹配的文本只是在列值中出现,like不会查到,除非使用通配符,但是regexp在列值中进行匹配,如果在列值中出现,如regexp就会找到它。 select * from products where prod_name regexp ‘1000’ 查处prod_name中包含1000的行。 常用的正则表达式有:. | ^ $ [123] tong=[1|2|3] tong =‘1 tong’ or ‘2 tong’ or ‘3 tong’ 1|2|3 tong = ‘1’ or ‘2’ or ‘3 tong’ [1-9] 如果要匹配特殊字符必须要使用 ‘\\ ‘ 做前导。 比如:select * from products where prod_name regexp ‘\\.’ 如要转义\ 则需要 \\\ * + ? {n} {n,} {n,m} 5、计算字段。 (1)、拼接 concatenate select concat(vend_name, ‘( ‘ , vend_country, ‘)’ ) from vendor ; rtrim 去掉右边的空格 ltrim 去掉左边的空格 trim 去掉两边的空格。 (2)进行算术计算。 select prod_id ,quantity, item_price, quantity*item_price as expand_price from orderitems (3)select 提供了一个测试和实验函数与计算的很好的方法。 select 3*4; select trim(‘sssss ’ ); select now();等等 使用函数 upper()left() length() locate() lower() ltrim() right() rtrim() soundex() substring() left() SELECT LEFT(foobarbar, 5); -fooba c) mysql SELECT LOCATE(bar, foobarbar); - 4 mysql SELECT LOCATE(xbar, foobar); - 0 mysql SELECT LOCATE(bar, foobarbar, 5); -7 d) soundex()返回发音相似的差不多是根据发音进行模糊匹配,只对英文有效。(了解) 通常存时间的时候会把日期时间一起存起来,取日期的时候要使用date()函数,取时间使用time()函数。此外还有year()month() 聚集函数。 avg() count() max() min() sum() avg()会忽略NULL值的行。 count(*)会对行统计,不管是否包含null count(column) 会对特定列中的具有值进行统计,忽略null值。 max() 【min()】说明:max()会返回该列中数据或日期中最大的值,但是对于文本文件,只会返回最后一行(不会排序什么的),min()会返回文本中第一行。 在5.1版本之后,聚集函数中可以使用distinct。 select avg(distinct prod_price)from products; 聚集函数比在编程中效率高,因此推荐使用聚集函数。 对于分组函数。 如果分组列中有null,则null作为一个分组返回,如果有多个null,他们将分为一组。 select host, count(*) from user group by host with rollup; 其中with rollup就是对所有的进行汇总。 where子句在分组前进行过滤,having子句在分组后进行过滤。where排除的行不在分组中。 全文搜索。 为了使用全文搜索,必须索引被搜索的列,然后select和m

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档