sql基本查询

使用到的表,ORACLE数据库HR用户
在这里插入图片描述
查看整张表
在这里插入图片描述
查看指定的列(指出列名就行)
SELECT department_id,department_name FROM departments;
在这里插入图片描述
使用算术表达式
SELECT employee_id,first_name,salary,salary+100,salary+(salary*0.1)
from employees;
在这里插入图片描述
定义列别名(重命名列标题)
SELECT last_name, last_name as xing, last_name shixing , last_name “hai shi XING”
from employees;
在这里插入图片描述
连接运算符| |链接列或字符
first_name||last_name “xingming”:把姓名连接到一块,显示成一列。修改列名
first_name||’ ‘||last_name “shiyongkongge”:把姓名连接到一块,中间有空格。显示成一列
SELECT first_name,last_name, first_name||last_name “xingming” ,
first_name||’ '||last_name “shiyongkongge” from employees;
在这里插入图片描述在这里插入图片描述
把两列连接成一列,中间加上自定义的内容
在这里插入图片描述
取消重复的值
有许多重复的值
在这里插入图片描述
不显示重复的值
SELECT distinct department_id from employees;
在这里插入图片描述
SELECT distinct department_id,job_id from employees;
在这里插入图片描述
显示表的结构 desc
在这里插入图片描述
在这里插入图片描述
空值是未分配的或不适用的值, 空不等于零或空格
SELECT last_name,job_id,salary,commission_pct from employees;
在这里插入图片描述
包含空值进行计算结果为空
在这里插入图片描述

WHERE带条件的查询,用来限制选定的行
select * from employees
where department_id=90;
在这里插入图片描述
字符串和数据值用单引号括起来
字符值区分大小写,日期值区分大小写
select employee_id,first_name,last_name,job_id from employees
where first_name=‘Steven’;
在这里插入图片描述
没区分大小写,无法查询到
在这里插入图片描述
不加引号,报错
在这里插入图片描述
查询日期
select * from employees
where hire_date = ‘24-12月-05’;
在这里插入图片描述
使用比较运算符
select first_name,last_name,salary from employees
where salary>=15000;
在这里插入图片描述
查询在指定范围内的数值BETWEEN AND
select first_name,last_name,salary from employees
where salary BETWEEN 13000 AND 20000;
在这里插入图片描述
不能返着写,不然没结果
select first_name,last_name,salary from employees
where salary BETWEEN 20000 AND 13000;
在这里插入图片描述
varcher列中使用运算符
在这里插入图片描述
in运算符:查找指定的值
select first_name,last_name,salary from employees
where salary in (10000,250000,17000);
在这里插入图片描述
like运算符
select first_name,last_name,salary from employees
where first_name like ‘S%’;
查询S开头的
在这里插入图片描述
select first_name,last_name,salary from employees
where first_name like ‘%s’;
查询S结尾的
在这里插入图片描述
select first_name,last_name,salary from employees
where first_name like ‘%am%’;
在这里插入图片描述
select first_name,last_name,salary from employees
where first_name like ‘_d%’;
前面匹配任意一个字符,第二个字第是d
在这里插入图片描述
前面匹配任意两个字符,第三个字第是d
select first_name,last_name,salary from employees
where first_name like ‘__s%’;
在这里插入图片描述
查询为null
select first_name,last_name,commission_pct from employees
where commission_pct is null;
在这里插入图片描述
查询非空
select first_name,last_name,commission_pct from employees
where commission_pct is not null;
在这里插入图片描述
employee_id不是100和101的
select first_name,last_name,employee_id,commission_pct from employees
where employee_id not in (100,101);
在这里插入图片描述
只有它两不显示
在这里插入图片描述
显示不是以S开头的名
select first_name,last_name,salary from employees
where first_name not like ‘S%’;
在这里插入图片描述
使用逻辑运算符定义条件
And同时满足两个条件
select email,last_name,salary,department_id from employees
where salary >= 10000 and department_id=90;
在这里插入图片描述
or:要求不高,只要满足一个条件就好
select email,last_name,salary,department_id from employees
where salary >= 10000 or department_id=90;
在这里插入图片描述
AND的优先级大于OR
select last_name, job_id,salary from employees
where job_id = ‘SA_REP’ OR job_id=‘AD_PRES’
and salary > 15000;
在这里插入图片描述
select last_name, job_id,salary from employees
where ( job_id = ‘SA_REP’ OR job_id=‘AD_PRES’ )
and salary > 15000;
在这里插入图片描述

ORDER BY排序
select last_name,first_name,hire_date from employees
ORDER BY hire_date;
在这里插入图片描述
同上面一样
select last_name,first_name,hire_date from employees
ORDER BY hire_date asc;
在这里插入图片描述
返着查询
在这里插入图片描述
查询后在排序
select last_name,first_name,department_id,employee_id from employees
where department_id=90 ORDER BY employee_id;
在这里插入图片描述
select last_name,first_name,department_id,employee_id from employees
where department_id=90 ORDER BY employee_id desc;
在这里插入图片描述
默认空值排在最后
select last_name,first_name,commission_pct from employees
ORDER BY commission_pct;
在这里插入图片描述
让空值排在前面
select last_name,first_name,commission_pct from employees
ORDER BY commission_pct nulls FIRST;
在这里插入图片描述
列别名进行排序
select last_name,first_name m ,commission_pct from employees
ORDER BY m;
在这里插入图片描述
使用表达式排序
select last_name,first_name,salary,salary+100 from employees
ORDER BY salary+100;
在这里插入图片描述
多个列排序(先排序ID列,在排序first_name列,在按字母排序)
select last_name,first_name,salary,department_id from employees
ORDER BY department_id,first_name;
在这里插入图片描述
一个升序,一个降序(这两我不分)
select last_name,first_name,salary,department_id from employees
ORDER BY department_id asc ,first_name desc;
在这里插入图片描述
在select中按列号排序
select last_name,first_name,salary,department_id from employees
ORDER BY 3;
在这里插入图片描述
select last_name,first_name,salary,department_id from employees
ORDER BY 4.3;
在这里插入图片描述
返回前几行
select employee_id,last_name,first_name from employees
ORDER BY employee_id
FETCH first 5 ROWS ONLY;
在这里插入图片描述
返回百分之n行
select employee_id,last_name,first_name from employees
ORDER BY employee_id
FETCH first 10 percent rows only;
在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
SQL Server是一种关系型数据库管理系统,支持SQL语言进行数据查询。以下是SQL Server查询基本语法和示例: 1. 选择表中的若干列 ```sql SELECT column1, column2, ... FROM table_name; ``` 2. 选择表中的若干元组 ```sql SELECT * FROM table_name WHERE condition;``` 3. order by 字句 ```sql SELECT * FROM table_name ORDER BY column1 ASC|DESC, column2 ASC|DESC, ...; ``` 4. 聚集函数 ```sql SELECT COUNT(column_name) FROM table_name; SELECT SUM(column_name) FROM table_name; SELECT AVG(column_name) FROM table_name; SELECT MAX(column_name) FROM table_name; SELECT MIN(column_name) FROM table_name; ``` 5. group by 子句 ```sql SELECT column_name1, COUNT(column_name2) FROM table_name GROUP BY column_name1; ``` 6. 等值与非等值连接查询 ```sql SELECT * FROM table_name1 JOIN table_name2 ON condition; SELECT * FROM table_name1 LEFT JOIN table_name2 ON condition; SELECT * FROM table_name1 RIGHT JOIN table_name2 ON condition; ``` 7. 带有in谓词的子查询 ```sql SELECT * FROM table_name WHERE column_name IN (SELECT column_name FROM table_name WHERE condition); ``` 8. 带有比较运算符的子查询 ```sql SELECT * FROM table_name WHERE column_name operator (SELECT column_name FROM table_name WHERE condition); ``` 9. 带有any或all谓词的子查询 ```sql SELECT * FROM table_name WHERE column_name operator ANY (SELECT column_name FROM table_name WHERE condition); SELECT * FROM table_name WHERE column_name operator ALL (SELECT column_name FROM table_name WHERE condition); ``` 10. 带有exists谓词的子查询 ```sql SELECT * FROM table_name WHERE EXISTS (SELECT column_name FROM table_name WHERE condition); ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值