SQL学习:查询的用法(1)

在SQL servre的使用中,查询的用法是最多的、最重要的,也是最难学习的,因此掌握查询的用法很重要。

先将表的示例上图

员工表:

SQL学习:查询的用法(1)

部门表:                                                                            薪水表:

SQL学习:查询的用法(1)                   SQL学习:查询的用法(1)

在员工表中包括:员工编号,姓名,职位,上司编号,雇用时间,薪水,奖金,部门编号 这几个字段。

1.查询中计算列的用法:

可以整体输出员工表的信息 *代表所有的----

select * from emp;

假如要输出某个字段或者某几个字段的具体信息,比如我们要输出 员工姓名和员工的薪水----

select ename,sal from emp

结果如下图所示:

SQL学习:查询的用法(1)

我们也可以给某个字段用别名的形式来表示----

select ename,sal as "月薪" from emp   效果是sal 变成了 别名年薪

2.查询中 distinct 的用法

distinct 表示的是不允许重复的, 即会过滤掉重复的数据

如在emp表中的deptno字段中 有重复的数据,假若我们需要过滤掉他们----

select distinct deptno from emp

显示的结果是:

SQL学习:查询的用法(1)

select distinct deptno,ename from emp --这是把 deptno ename 的组合整体重复的数据过滤掉。

3.between的用法--表示自某个范围

假如我们查找工资在1300到2800之间的员工的信息

SQL学习:查询的用法(1)

查询结果如下:

SQL学习:查询的用法(1)

等价于

SQL学习:查询的用法(1)

where 表示有条件的从表中选取某些数据。

用法:select 字段名 from 表名 where 列 运算符 值 (即 选择的条件)

4. in 的用法

in 表示某个孤立的值

SQL学习:查询的用法(1)

等价于 SQL学习:查询的用法(1)

not in 表示把sal  既不是1000也不是3000也不是5000的所有信息输出

5. NUll的用法

null表示没有值,表示空值。而零表示一个确定的值 这两个是有区别的

null 不能参与如下的运算 < >  !=  =

null 可以参与 is 和 is not 的运算

例 将奖金为不为空的员工的信息输出 SQL学习:查询的用法(1)

输出的结果是

SQL学习:查询的用法(1)

注意: 任何数据类型都允许为null

任何数字与null 参与数学运算的结果永远为null

上一篇:No.3小白的HTML+CSS心得篇


下一篇:【转】mysql触发器的实战(触发器执行失败,sql会回滚吗)