1 / 11
文档名称:

Mysql学习笔记.doc

格式:doc   大小:302KB   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Mysql学习笔记.doc

上传人:2072510724 2020/3/29 文件大小:302 KB

下载得到文件列表

Mysql学习笔记.doc

相关文档

文档介绍

文档介绍:MySQL学****笔记查询语句简单查询distinct删除重复行SELECT语句中使用ALL或distinct选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用distinct选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。distinct一般需要处理单一字段时使用,不能用于多个字段。例如:select   distinct   ID,AA,BB   from   tName select   distinct   ID   from   tName 区别在于:第一种情况是把三个字段的内容都相同的记录认为是相同的记录,合并一条,如果有一个字段是不同的,认为不是相同,不合并。我要消除name字段值重复的记录,同时又要得到id字段的值,其中id是自增字段。 如何用distinct消除重复记录的同时又能选取多个字段值?selectdistinctnamefromt1能消除重复记录,但只能取一个字段,现在要同时取id,name这2个字段的值。 selectdistinctid,namefromt1可以取多个字段,但只能消除这2个字段值全部相同的记录。最后解决方法: SELECT id,nameFROMt1WHEREidIN(SELECTMAX(id)FROMt1GROUPBYname)orderby id desc注意开头的 id 的一定要,后面的orderby里有的字段一定要加进select结果,要不然排序无效。限制返回的行数使用TOPn[PERCENT]选项限制返回的数据行数,TOPn说明返回n行,而TOPnPERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。例如:SELECTTOP2*FROMtesttableSELECTTOP20PERCENT*FROMtestableWHERE子句设置查询条件WHERE子句可包括各种条件运算符:比较运算符(大小比较):>、>=、=、<、<=、<>、!>、!<范围运算符(表达式值是否在指定的范围):BETWEEN…AND…NOTBETWEEN…AND…列表运算符(判断表达式是否为列表中的指定项):IN(项1,项2……)NOTIN(项1,项2……)模式匹配符(判断值是否与指定的字符通配格式相符):LIKENOTLIKE常用配字符:百分号%:可匹配任意类型和长度的字符,如果是中文,请使用两个百分号即%%。下划线_:匹配单个任意字符,它常用来限制表达式的字符长度。方括号[]:指定一个字符、字符串或范围,要求所匹配对象为它们中的任一个。[^]:其取值也和[]相同,但它要求所匹配对象为指定字符以外的任一个字符。空值判断符(判断表达式是否为空):ISNULLNOTISNULL逻辑运算符(用于多条件的逻辑连接):NOTANDOROrderby排序使用ORDERBY子句对查询返回的结果按一列或多列排序。ORDERBY子句的语法格式为:ORDERBY{column_name[ASC|DESC]}[,…n]其中ASC表示升序,为默认值,DESC为降序。ORDERBY不能按ntext、text和image数据类型进行排序。COUNT()函数count(*)对行的数目进行计算,包含NULL。count(column)对特定的列的值具有的行数进行计算,不包含NULL值。count()还有一种使用方式,count(1)这个用法和count(*)的结果是一样的。查询字段为NULL在mysql中,查询某字段为空时,不可用 =null,而是isnull,不为空则是isnotnull。具体格式如下:select * from [table name] where [column name] is null;select * from [table name] where [column name] is not null;错误的写法:select * from  [table name]  where  [column name]=null;select * from  [table name]  where length([column name])=0;IFNULL、ISNULL和NULLIF区别IFNULL用法说明:IFNULL(expr1,expr2)如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2。IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。ISNULL用法说明:ISNULL(expr)如expr为null,那么isnull()的返回值为1,否则返回值为0。NULLIF用法说明:NULLIF(expr1,expr2)如果expr1 =expr2成立,那么返回值为NULL,否则返回值为expr1。cas