SQL查询--选择运算(1)
/** 本贴使用MySQL数据库 **/
WHERE子句可以实现关系代数中的选择运算,用于查询满足选择条件的元组,常用的查询条件有:
- 1.比较运算:>,>=,<,<=,=,<>(或!=);
- 2.范围查询:BETWEEN...AND;
- 3.集合查询:IN;
- 4.空值查询:IS NULL;
- 5.字符串匹配查询:LIKE;
- 6.逻辑查询:AND,OR,NOT。
下面我们创建一个简单的“student”学生表用于详细说明这些查询。
create table student(
studentNo VARCHAR(10) NOT NULL ,
studentName VARCHAR(20) NOT NULL ,
sex char(2) NULL,
classNo int NULL,
CONSTRAINT studentPK PRIMARY KEY (studentNo)
)
接下来我们插入几条简单数据。
insert into student values
('','小工','男',''),
('','小后','男',''),
('','小哄','男',''),
('','小红','女',''),
('','小民','女',''),
('','小明','女',''),
('','小海','男',''),
('','小哈','女','')
1. 比较运算
1.1 >运算符,运行以下sql语句
select * from student
where studentNo > 1
查询studentNo大于数值1的所有学生,显示结果如下
如果我使用的sql语句修改为
select * from student
where studentNo > ''
显示的结果为
总结:
studentNo被定义为varchar类型。前者为数值之间的比较,查询结果为所有studentNo数值大于1的数据;后者为字符串之间的比较,查询结果为所有studentNo字符串大于‘1’的数据。
以上是对字符类型的字段进行比较,接下来对整型类型的字段classNo进行比较,运行以下sql语句
select * from student
where classNo > 2
查询结果为
修改sql语句为:
select * from student
where classNo > ''
所得到的查询结果为
总结:以上的两次查询结果一样,说明整型类型的字段之间的比较都是数值之间的比较,即是查询条件为大于某个字符串,也是进行数值之间的比较。
(Continue...)
SQL查询--选择运算(1)的更多相关文章
- SQL Server温故系列(4):SQL 查询之集合运算 & 聚合函数
1.集合运算 1.1.并集运算 UNION 1.2.差集运算 EXCEPT 1.3.交集运算 INTERSECT 1.4.集合运算小结 2.聚合函数 2.1.求行数函数 COUNT 2.2.求和函数 ...
- 提高SQL查询效率(SQL优化)
要提高SQL查询效率where语句条件的先后次序应如何写 http://blog.csdn.net/sforiz/article/details/5345359 我们要做到不但会写SQL,还要做到 ...
- (转)经典SQL查询语句大全
(转)经典SQL查询语句大全 一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql s ...
- 关于SQL查询效率,100w数据,查询只要1秒
1.关于SQL查询效率,100w数据,查询只要1秒,与您分享:机器情况p4: 2.4内存: 1 Gos: windows 2003数据库: ms sql server 2000目的: 查询性能测试,比 ...
- 经典SQL查询语句大全
一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数 ...
- 提高SQL查询效率的常用方法
提高SQL查询效率的常用方法 (1)选择最有效率的表名顺序(只在基于规则的优化器中有效): Oracle的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driv ...
- 提高SQL查询效率
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...
- Mysql常用30种SQL查询语句优化方法
出处:http://www.antscode.com/article/12deee70111da0c4.html 1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使 ...
- MySQL 常用30种SQL查询语句优化方法
1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描. 2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉 ...
随机推荐
- maven项目打包发布时跳过测试
mvn命令: mvn clean install -Dmaven.test.skip=true eclipse build... 命令: clean install -Dmaven.test.skip ...
- ui-router ^1.x在ng1中使用state events
官网信息:https://ui-router.github.io/ng1/docs/latest/modules/ng1_state_events.html Legacy state events P ...
- NodeJS项目迁移兼Ubuntu下NodeJS环境部署
前言 之前做的几个项目都托管在阿里云服务器,但是最近要到期了.想着到底要不要续期,毕竟100/月.后面看着阿里云有个活动,800/三年.果断买下.环境部署折腾了一天,其中也遇到几个坑. 目录 一.安装 ...
- 表达式求值(栈方法/C++语言描述)(一)
一个算数表达式(以下简称为表达式)由运算数.运算符.左括号和右括号组成,定义一个枚举类型TokenType表示为: typedef enum { BEGIN, NUMBER, OPERATOR, LE ...
- javascript 用Activex方法调用数据库中的数据,只可用于IE
// JavaScript source code //创建数据库连接对象 var conn = new ActiveXObject("ADODB.Connection"); // ...
- swift3.0 点击UIScrollView中输入框之外的区域关闭键盘
通过点击事件实现关闭键盘 scrollView: UIScrollView! title_textField: UITextField! let hideKeyboardTapGesture = UI ...
- 学习java线程学习笔记
线程:代码执行的一个分支 主要作用是提高了效率,cpu能同时执行多个部分的代码. 线程的创建:两种方式 a.继承于thread类,重写run方法. b. ...
- Java微信公众平台开发之扫码支付模式二
官方文档点击查看 准备工作:已通过微信认证的公众号,域名可以不通过ICP备案借鉴了很多大神的文章,在此先谢过了大体过程:根据固定金额和商品的ID先生成订单,再生成二维码,客户扫一扫付款模式二支付的流程 ...
- 白话ASP.NET MVC之三:Controller是如何解析出来的
我们在上一篇文章中介绍Controller激活系统中所涉及到的一些类型,比如有关Controller类型的相关定义类型就包括了IController类型,IAsyncController类型,Cont ...
- $($('.className').html( )选择器的工作原理
$($('.slot')[0]).html('<img src = "' + images[slotOne-1] + '">');