基本SELECT语句(一)--学习笔记

  用SELECT语句可以实现数据库的查询操作,同时,它还可以使用各种子句对查询结果进行分组统计、合计、排序等操作。SELECT语句还可以将查询结果生成另一个表(临时表或永久表)。

  SELECT语句的语法格式:

SELECT [ALL|DISTINCT] select_list
[INTO [new_table_name]]
[FROM {table_name,table_name2,...|view_name,view_name2,...}]
[WHERE clause]
[GROUP BY clause(子句)]
[HAVING clause(子句)]
[ORDER BY clause(子句)]
[COMPUTE clause(子句)]
[FOR BROWSE]

在使用中,子句可以省略,但在列出时按以上顺序。

1、简单查询

  简单查询包括SELECT列表、FROM子句和WHERE子句,它们分别指出所查询的列、查询对象(表或视图)、搜索条件等。

如:查询TongFuHotel表中年龄小于30岁的男性

1 SELECT TongFuHotel.Name,TongFuHotel.Job
2 FROM TongFuHotel
3 WHERE TongFuHotel.Age<30 AND TongFuHotel.Sex=''

(1)SELECT列表语句

  SELECT列表语句(select_list)指定所选择的列,它可以为一组列名列表、星号、表达式、变量等构成。当用星号表示则为选择指定表或视图中的所有列。

SELECT *FROM TongFuHotel

使用SELECT列表语句时,多个被指定的列名之间用逗号分隔。SELECT列表还可以对数值列进行算术运算(包括加、减、乘、除、取模等)。其中,加、减、乘、除操作适用于任何数值型(如int、smallint、tinyint、decimal、numeric、float、money、smallmoney等),而取模运算不能用于money和smallmoney数据类型。此外,还可以指定字符串常量或变量改变它们的输出结果。

  在SELECT语句中使用ALL|DISTINCT选项来显示所有行(ALL)或删除重复的行(DISTINCT),缺省时为ALL。使用DISTINCT选项时,对于所有数据重复的SELECT列表数值只显示一次。

SELECT DISTINCT job FROM TongFuHotel

(2)FROM子句

  FROM子句指定SELECT语句查询相关的表或视图。最多可指定16个表或视图,相互之间用逗号分隔。如果这些表或视图属于不同的数据库,可用“数据库.所有者名称.对象”格式指定表或视图。

  在FROM子句中可为每个表或视图指定一个别名,别名紧跟在对象名称之后,用空格分隔,允许使用别名引用表中各列。

1 SELECT Name,Job
2 FROM TongFuHotel t
3 WHERE t.Age<30 AND t.Sex=''

(3)WHERE子句限定搜索条件

①WHERE语句可包含条件运算符

a、比较运算符    >、<、>=、<=、=、<>、!>、!<   (大小比较)

b、范围运算符    BWTWEEN...AND、NOT BETWEEN...AND   (判断表达式值是否在指定范围之内)

c、列表运算符    IN、NOT IN    (判断表达式值是否为列表中的指定项)

d、模式匹配符    LIKE、NOT LIKE    (判断列植是否与指定的字符统配格式相符)

e、空值判断符    IS NULL、NOT IS NULL   (判断表达式值是否为空)

f、逻辑运算符    AND、OR、NOT    (用于多条件的逻辑连接)

②WHERE语句可包含模式匹配符

a、%:可匹配任意类型长度的字符

b、_:匹配单个任意字符,常用于限制表达式的字符长度

c、[]:指定一个字符、字符串或范围,要求所匹配对象为它们中的任一字符

d、[^]:取值与[]相同,但要求所匹配对象为指定字符以外的任一字符

 

参考文献:精通C#数据库编程.王华杰,黄山编著——北京:科学出版社,2003.10

 

转载于:https://www.cnblogs.com/zyf2014/p/5445520.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值