SQL Server 7.0 入门(二)
2024-08-31 00:48:50
供稿:网友
中国最大的web开发资源网站及技术社区,
存取数据
select语句
1. 选择表中的所有列
“*”对select语句有特殊意义。它指定表中的所有列,而不用列出列的名字。列的顺序和表中的顺序相同。
2. 选择不同的值
如果被选择列表中的列有重复值,这时“distinct”关键字可以用来忽略重复值。
注意: 如果select list中多于一列,则distinct关键字对它们总体有效。如果一列有重复值,而其他列的值是唯一的,则有重复值的一列包含在结果中。
3. 在结果数据集合中对列重命名
结果中列的默认名字是源数据库中的列名,用户可以用自己指定的列名来代替默认的列名。
select authorfirstname = au_fname from authors
--将列名由“au_fname”改成“authorfirstname”
4. 选择计算值
在select list中可以包含计算值或常量。计算值是在算术表达式的基础上计算而来的,它可包含在表中的一列或多列。
select totalsale = price * ytd_sales from titles
条件选择(where子句)
使用一个比较或逻辑操作在where子句中指定过滤条件,来生成表中想得到的行。
1. 比较操作
比较操作能比较数值、字符和日期数据,返回true或false。
比较操作符
<(小于)
>(大于)
=(等于)
<>(不等于)
>=(大于等于)
<=(小于等于)
!=(不等于)
!<(不小于)
!>(不大于)
2. 逻辑操作
逻辑操作测试某些条件是否正确,并根据测试结果返回true或false。
· like 如果操作和指定的字符串相同,则返回true,指定的字符串也可包含通配符。
有通配符的like操作更有用。
· “%”规定所有字符串可代替字符“%”的位置。任何在“%”之前或之后的指定字符串视为常量。如:“new%”表示所有以“new”开头的字符串,“%new”表示以“new”结尾的字符串。
· “_”规定任何单个字符可代入“_”的位置。这在只有一个字符不同的相近字符的情况下非常有用。
· “[]”规定使用方括号中定义的字符代替一个字符。方括号中可能是独立的字符(如[ahg]),也可是字符范围(如[c-i])。
· “[^]”规定方括号中“^”之后的字符为不能用来代入的字符,它可以是独立字符(如[ahg]),也可是字符范围(如[c-i])。
注意:可以在一个表达式中组合运用这些通配符。
· between 如果操作数在提供的范围之内,则返回true。
between可和not操作符一同使用,如果数据在指定范围之外,则返回true。
注意:betten操作符是指定范围。例如,between a and b表示所有在a和b之间的值,包括a和b。
· in 如果操作数和任意的指定值相匹配,则in操作符返回true。指定值可以是一个常量值列表,也可由另外的查询(称为子查询)产生。
in操作符也可和not操作符联合使用,如果数据不在指定值中,它返回true。
· and 它结合两个表达式,如果两个表达式都为true,则它返回true,否则返回false。
· or 它结合两个表达式,如果两个表达式中有一个为true,则它返回true,如果两个都为false,则返回false。
· not 它对逻辑操作值求反,它可和大多数逻辑操作联合使用,对操作返回的值求反。
· some|any 这两个操作有相同的格式。它们把操作数和指定值的集合比较。如果操作数与任意指定值的比较返回true,则它返回true。比较操作可以是任意sql server定义的比较操作。指定值列表可以由另一个查询产生。
· all all操作和some及any有相似的格式。不同的是,如果所有操作数和指定值的比较返回true,它才返回true。