掌握SQL四条最基本的数据操作语句
2006-04-07 10:44:30 来源:WEB开发网select * from employees
where last_name = ''jones'';
last_name = ''jones''部分就是断言。在执行该语句时,sql将每一行的last_name列与“jones”进行比较。如果某一职员的姓为“jones”,即断言成立,该职员的信息将被包括到结果表中(见表6)。
使用最多的六种比较
我们上例中的断言包括一种基于“等值”的比较(last_name = ''jones''),但是sql断言还可以包含其他几种类型的比较。其中最常用的为:
等于 =、不等于 <>、小于 <、大于 >、小于或等于 <=、大于或等于 >=
下面给出了不是基于等值比较的一个例子:
select * from employees
where salary > 50000;
这一查询将返回年薪高于$50,000.00的职员(参见表7)。
逻辑连接符
有时我们需要定义一条不止一种断言的select语句。举例来说,如果你仅仅想查看davy jones的信息的话,表6中的结果将是不正确的。为了进一步定义一个where子句,用户可以使用逻辑连接符and,or和not。为了只得到职员davy jones的记录,用户可以输入如下语句:
select * from employees
where last_name = ''jones'' and first_name = ''davy'';
在本例中,我们通过逻辑连接符and将两个断言连接起来。只有两个断言都满足时整个表达式才会满足。如果用户需要定义一个select语句来使得当其中任何一项成立就满足条件时,可以使用or连接符:
select * from employees
where last_name = ''jones'' or last_name = ''smith'';
有时定义一个断言的最好方法是通过相反的描述来说明。如果你想要查看除了boston办事处的职员以外的其他所有职员的信息时,你可以进行如下的查询:
select * from employees
where not(branch_office = ''boston'');
关键字not后面跟着用圆括号括起来的比较表达式。其结果是对结果取否定。如果某一职员所在部门的办事处在boston,括号内的表达式返回true,但是not操作符将该值取反,所以该行将不被选中。
断言可以与其他的断言嵌套使用。为了保证它们以正确的顺序进行求值,可以用括号将它们括起来:
select * from employees
where (last_name = ''jones''
and first_name = ''indiana'')
or (last_name = ''smith''
and first_name = ''bessie'');
sql沿用数学上标准的表达式求值的约定—圆括号内的表达式将最先进行求值,其他表达式将从左到右进行求值。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接