select查询语句

select语句:用于从表中选取数据

简单查询:

格式:select 列名称 from 表名称;(如果要选取多个列名称,可以用逗号隔开;若是全部列,则用*取代列名称)

select语句只会将结果检索出来,并不会影响底层的数据

eg:

提示:星号(*)是选取所有列的快捷方式

扩展:

1.更改别名:as:可以为列名称和表名称指定别

 

as可以省略,直接select lastname family,fistname name from persons;

假若指定成中文名称,要用单引号括起来

 

条件查询:添加where子句

首先要知晓运算符这个东东:

注意:1.一般条件值都要用引号括起来,除了数字不用之外,连日期也要用引号括起来

1.between...and...操作符: 选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期

【不同数据库系统对between and范围的操作方式不同,注意检查】

eg:以字母顺序显示介于 "Adams"(包括)和 "Carter"(不包括)之间的人

eg:以字母顺序显示介于 "Adams"(包括)和 "Carter"(不包括)范围之外的人

 2.is NULL 跟 is not NULL操作符

 NULL在数据库中,不是一个具体值,代表什么都没有,它不是一个数据,不能用“=”来赋值,必须使用is NULL 跟 is not NULL操作符

select * from persons where address is NULL;

3.SQL AND & OR 运算符

AND的优先级大于OR,当and跟or同时存在时,记得用括号把or先括起来

 

4.通配符:在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。

 []:目标匹配字符:匹配单个字符,若写了多个,匹配任一

下列分为几个场景对这四个通配符进行应用:

  persons表如下:

  

  1.选取居住在以 "Ne" 开始的城市里的人

  

  2.取的这条记录的姓氏以 "C" 开头,然后是一个任意字符,然后是 "r",然后是任意字符,然后是 "er"

  

  3.选取居住的城市以 "A" 或 "L" 或 "N" 开头的人

SELECT * FROM Persons WHERE City LIKE '[ALN]%'

5.IN 操作符:相当于多个or

eg:选取persons表中lastname为adams跟bush的人

 

6.order by子句:用于对指定的列表中的列进行排序,默认按升序排序(asc),可用在最后加(desc)来使其降序排序;越前的排序字段先看,靠后的字段可能会用不上

eg:创建一个orders表:

  1.以字母顺序显示公司名字:

  

  2.以字母顺序显示公司名字,并以数字顺序显示顺序号:

   

  3.以逆字母顺序显示公司名字:

  

  4.以逆字母顺序显示公司名字,并以数字顺序显示顺序号:

   

注意:
select
id,fistname from persons order by 2;#2是指以按第二个字段的升序排序 相当于select id,fistname from persons order by fistname;

 

posted @ 2018-04-03 23:21  XQR  阅读(8185)  评论(0编辑  收藏  举报