使用sql语句创建数据库 数据库进阶:循序渐进讲解SQL查询语句的高级应用技巧[2]
数据库进阶:循序渐进讲解SQL查询语句的高级应用技巧[2]
模式匹配符(判断值是否与指定的字符通配格式相符):LIKE NOT LIKE
空值判断符(判断表达式是否为空) IS NULL NOT IS NULL
逻辑运算符(用于多条件的逻辑连接) NOT AND OR
范围运算符例 age BEEEN AND 相当于age>= AND age<=
列表运算符例 country IN ( Germany China )
模式匹配符例 常用于模糊查找 它判断列值是否与指定的字符串格式相匹配 可用于char
varchar text ntext datetime和smalldatetime等类型查询
可使用以下通配字符
百分号% 可匹配任意类型和长度的字符 如果是中文 请使用两个百分号即%%
下划线_ 匹配单个任意字符 它常用来限制表达式的字符长度
方括号[] 指定一个字符 字符串或范围 要求所匹配对象为它们中的任一个
[^] 其取值也[] 相同 但它要求所匹配对象为指定字符以外的任一个字符
例如
限制以Publishing结尾 使用LIKE %Publishing
限制以A开头 LIKE [A]%
限制以A开头外 LIKE [^A]%
空值判断符例WHERE age IS NULL
逻辑运算符 优先级为NOT AND OR
(四)查询结果排序
使用ORDER BY子句对查询返回的结果按一列或多列排序 ORDER BY子句的语法格式为
ORDER BY {column_name [ASC|DESC]} [ …n]
其中ASC表示升序 为默认值 DESC为降序 ORDER BY不能按ntext text和image数据类型进行排
序
例如
SELECT * FROM usertable ORDER BY age desc userid ASC
另外 可以根据表达式进行排序
二 联合查询
UNION运算符可以将两个或两个以上上SELECT语句的查询结果集合合并成一个结果集合显示 即执行联
合查询 UNION的语法格式为
select_statement UNION [ALL] selectstatement [UNION [ALL] selectstatement][…n]
其中selectstatement为待联合的SELECT查询语句
ALL选项表示将所有行合并到结果集合中 不指定该项时 被联合查询结果集合中的重复行将只保留一
行
联合查询时 查询结果的列标题为第一个查询语句的列标题 因此 要定义列标题必须在第一个查询语
句中定义 要对联合查询结果排序时 也必须使用第一查询语句中的列名 列标题或者列序号
在使用UNION 运算符时 应保证每个联合查询语句的选择列表中有相同数量的表达式 并且每个查询选
![使用sql语句创建数据库 数据库进阶:循序渐进讲解SQL查询语句的高级应用技巧[2]](http://img.zhputi.com/uploads/8f59/8f598143d85a9055dc3b35120d40bb0564900.jpg)
择表达式应具有相同的数据类型 或是可以自动将它们转换为相同的数据类型 在自动转换时 对于数值类
型 系统将低精度的数据类型转换为高精度的数据类型
在包括多个查询的UNION语句中 其执行顺序是自左至右 使用括号可以改变这一执行顺序 例如
查询 UNION (查询 UNION 查询 )
lishixinzhi/Article/program/SQL/201311/16243