SQL初学者教程:掌握学会WHERE子句_[SQL Server教程]
WHERE 子句用于规定选择的标准。
WHERE 子句
如需有条件地从表中选取数据,可将 WHERE 子句添加到SELECT语句。
语法
SELECT column FROM tableWHERE column operator value
下面的运算符可在 WHERE 子句中使用:
操作符 | 描述 | = Equal<>不等于>大于<小于>=大于等于<=小于等于BETWEEN在某个范围内LIKE搜索某种模式
注释:在某些版本的SQL中,操作符<>可以写为!=。
使用WHERE子句
如果只需选取居住于城市"Sandnes"中的某些人,我们需要向SELECT语句添加WHERE子句:
SELECT * FROM PersonsWHERE City='Sandnes'
"Persons" 表
LastName | FirstName | Address | City | Year | HansenOlaTimoteivn 10Sandnes1951SvendsonToveBorgvn 23Sandnes1978SvendsonStaleKaivn 18Sandnes1980PettersenKariStorgt 20Stavanger1960
结果:
LastName | FirstName | Address | City | Year | HansenOlaTimoteivn 10Sandnes1951SvendsonToveBorgvn 23Sandnes1978SvendsonStaleKaivn 18Sandnes1980
引号的使用
请注意,我们在例子中的条件值周围使用的是单引号。
SQL使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号。
文本值:
这是正确的:SELECT * FROM Persons WHERE FirstName='Tove'这是错误的:SELECT * FROM Persons WHERE FirstName=Tove
数值:
这是正确的:SELECT * FROM Persons WHERE Year>1965这是错误的:SELECT * FROM Persons WHERE Year>'1965'
LIKE 条件
LIKE用于规定针对列中某个模式的搜索。
语法
SELECT column FROM tableWHERE column LIKE pattern
符号"%"可用于定义模式之前及模式之后的通配符(模式中缺少的字符)。
使用LIKE
下面的语句会返回名字的第一个字符为'O'的人:
SELECT * FROM PersonsWHERE FirstName LIKE 'O%'
下面的语句会返回名字的最后一个字符为'a'的人:
SELECT * FROM PersonsWHERE FirstName LIKE '%a'
下面的语句会返回名字中包含字符'la'的人:
SELECT * FROM PersonsWHERE FirstName LIKE '%la%'