• 数据库系列之查询(1)


    基础查询

    1 语法
    SELECT    <列名>
    FROM      <表名>
    [WHERE    <查询条件表达式>]
    [ORDER BY <排序的列名>[ASC或DESC]]

    2 示例

    SELECT       AuthorName, Email, Age 
    FROM           Authors 
    WHERE        City='北京'
    ORDER BY  AuthorID DESC

    3、查询数据表中部分列

    SELECT AuthorName, Age, Sex, City
    FROM    Authors

    4、使用“*”查找所有列

    SELECT  *   FROM  Authors

    5、使用WHERE过滤部分行数据

    SELECT AuthorName, Age, Sex, City
    FROM    Authors
    WHERE City='北京'

    6、使用As子句将列转别名

    SELECT AuthorName as '作者姓名', Email as 电子邮件, Age as '年龄'
    FROM  Authors
    注意:
    1、应使用英文半角
    2、如果是中间不包含空格可以不写引号
    转别名还可以使用“=”
    SELECT '作者姓名'=AuthorName, 电子邮件=Email, 年龄=Age
    FROM Authors

    7、使用“+”连接多个字段,合并成一列

    SELECT AuthorName +'   '+ City as 作者居住城市
    FROM  Authors
    注意:
    1、+前后类型应兼容
    2、如果+连接数值类型,结果是数值之和。
    3、如果+连接字符串类型,结果是字符串的连接。

    8、使用Top关键字查询表中限定行数

    SELECT TOP 5 *  FROM  Authors 
    --使用PERCENT按百分比取数据
    SELECT Top 30 PERCENT * FROM  Authors

    9、在查询结果中使用常量列

    SELECT AuthorName as 作者姓名, 80 as 满意度
    FROM Authors

    10、使用DISTINCT关键字屏蔽重复数据

    SELECT DISTINCT City FROM Authors

    11、使用IS  NULL查询空数据

    SELECT AuthorName, Birthday, City
    FROM    Authors
    WHERE Birthday IS NULL
    如果填写了生日信息,然后又删了,如何查询出来?
    SELECT AuthorName, Birthday, City
    FROM Authors
    WHERE Birthday IS NULL OR Birthday=''

    12、UNION联合查询

    SELECT CustomerName as 姓名, City as 居住城市
    FROM Customers 
    UNION
    SELECT AuthorName as 姓名, City as 居住城市
    FROM Authors

    13 、排序
    (1)查询所有图书信息并按照价格字段升序显示

    SELECT BookName, Description, UnitPrice
    FROM Books
    ORDER By UnitPrice
    (2)查询单价在50元以上的图书信息,要求价格以8折显示,并按价格降序排列
    SELECT BookName as 图书名, Description as 描述, UnitPrice * 0.8 as 单价
    From Books
    WHERE UnitPrice > 50
    ORDER By UnitPrice DESC
    (3)查询结果还可以按多列进行排序
    SELECT BookName as 图书名, CategoryID as 类别编号, UnitPrice as 单价
    From Books
    ORDER By CategoryID, UnitPrice DESC

    模糊查询

    1 LIKE进行模糊查询
    WHERE  <列名>  [NOT]  LIKE  <字符表达式>
    考虑:执行下面的查询语句结果是什么?

    SELECT BookCode, BookName, UnitPrice, Description
    FROM Books
    WHERE BookCode LIKE '_[5,8,0]K%'
    A. a89K123
    B. 55K1234
    C. K1K9992
    D. m0K3339

    2 IN进行模糊查询
    WHERE  <列名>  IN  <(常量列表)>
    其中:<常量列表>中各常量值用逗号隔开
    查询居住地是“北京”、“上海”、“西安“、“成都”的作者

    SELECT AuthorName, City
    FROM Authors
    WHERE City IN ('北京','上海','西安','成都')

    3 BETWEEN进行模糊查询
    WHERE  <列名>  [NOT]  BETWEEN  <起始表达式> And  <结束表达式>
    注意:<起始表达式>和<结束表达式>的顺序不能颠倒
    查找单价在20到99元的图书信息

    SELECT BookCode, BookName, UnitPrice
    FROM Books
    WHERE UnitPrice Between 20 and 99
    Between语句还经常用于查找指定日期范围内的数据
    SELECT AuthorName
    FROM Authors
    WHERE  Birthday Between '1960-01-01' and '1982-01-01'

  • 相关阅读:

    卖了5个月水果之后再看互联网思维
    实时流式计算框架Storm 0.9.0发布通知(中文版)
    Top100Summit全球案例研究峰会第一天总结——云计算和大数据
    [若有所悟]提升工作效率的一些小技巧——资源管理器篇
    [若有所悟]主持会议的八大戒条
    惊魂36小时,一次生产事故,动态磁盘删除卷分区丢失,数据恢复案例实战
    一个不用的域名到期导致整个服务器上其他网站都无法访问的线上事故
    guava cache大量的WARN日志的问题分析
    IDEA下运行 mybatis报错 Parameter 'arg0' not found. Available parameters are [autoRecharge, id, param1, param2]
  • 原文地址:https://www.cnblogs.com/cmhunter/p/4278855.html
Copyright © 2020-2023  润新知