基本SQL语句的使用

查询语句

一、简单查询

注意:select后面可以跟某个表的字段名(变量名),也可以跟字面量/值(数据)

1.查询一个字段:select 字段名 from 表名;(注意:select和from是关键字,字段名和表名是标识符)

2.查询两个或多个字段:select 字段名,字段名 from 表名;(用逗号隔开即可)

3.查询所有字段:

(1)可以把所有字段都写上:select 字段名,字段名,字段名... from 表名;

(2)可以使用*号:select * from 表名;

缺点:效率低,可读性差,在实际开发中不建议使用()

4.给查询的列起别名:select 字段名 as 字段名别名 from 表名;

注意:(1)只是将查询列名显示为字段名别名,原名不会更改。因为select语句只是负责查询,永远不会进行修改工作

(2)as关键字可以进行省略

(3)改别名中间有空格:

select 字段名 as "别名+空格" from 表名;//别名加双引号

select 字段名 as '别名+空格' from 表名;//别名加单引号

注意:在所有数据库中,字符串统一使用单引号括起来,单引号是标准,因为双引号在Oracle数据库中无法使用,但是在MySQL数据库中可以使用

二、条件查询

1.什么是条件查询?

不是查询表中所有的数据,而是将表中符合条件的数据查询出来

2.语法格式:

                select

                        字段1,字段2,字段3...

                from

                        表名

                where

                        条件;

3.有哪些条件?

(1)= 等于;!= ,<>不等于;<小于;>大于;<=小于等于;>=大于等于;

(2)and并且;or或者(注意:and优先级比or高,一起使用加括号)

(3)between...and...两值之间(遵循左小右大原则),等同于>= and <= ;//闭区间

(4)is null 判断是否为空;is not null 判断是否不为空;

注意:在数据库中null不能以等号进行衡量,需要使用is(not)null的形式,因为数据库中的null代表什么也没有,它不是一个值,所以不能使用等号进行衡量

(5)in包含,相当于多个or,(not in,不在这个范围中),用法:(not)in('具体的值','具体的值'...);

注意:in不是一个区间,使用的时候括号里面添加具体的值

(6)not 表示取反,主要用在 is和in中

比如:is null

           is not null

           in

           not in等

三、模糊查询

like称为模糊查询,支持%与_匹配(%匹配多个字符,_匹配任意字符)

(1)找出姓名含有O的:select ename,sal from 表名 where ename like '%O%';

(2)找出姓名以T结尾的:select ename,sal from 表名 where ename like '%T';

(3)找出姓名以K开始的:select ename,sal from 表名 where ename like 'K%';

(4)找出姓名第二个字母是A的:select ename,sal from 表名 where ename like '_T%';

(5)找出姓名第三个字母是R的:select ename,sal from 表名 where ename like '__R%';

(6)找出姓名带有"_"的:select ename,sal from 表名 where ename like '%\_%';//里面的'\'表示转义

四、排序

1.单个字段进行排序:

将员工工资进行排序:

默认升序(order by):select ename sal from emp order by sal;

指定降序(order by xx desc):select ename sal from emp order by sal desc;

指定升序(order by xx asc):select ename sal from emp order by sal asc;

2.两个或多个字段进行排序:

按照员工薪资升序排序,薪资相同,按照名字首字母的升序排序:

select ename sal from emp order by sal asc,ename asc;

注意:sal在前,起主导作用,只有当sal相同时,才考虑启用ename排序

找出员工薪资1250-3000,并按照薪资降序排序:

 select ename,sal sal from emp where sal between 1250 and 3000 order by sal desc;

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值