SQL 基础之order by 排序和代替变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 基础之order by 排序和代替变量相关的知识,希望对你有一定的参考价值。
使用 ORDER BY 子句排序:
– ASC:升序,默认
– DESC:降序
ORDER BY 子句在SELECT 语句结尾,可使用列别名:
1、查找工资在7000-10000之间的数字并去重,升序排序
select distinct salary from employees where salary between 7000 and 10000 order by salary;
2、查找名字、部门并按照入职日期进行升序
select last_name,department_id,hire_date from employees order by hire_date;
select last_name,department_id,hire_date from employees order by hire_date desc;
另外一种用法是按照第几列来排序,下面的例子是用到第三列
select last_name,department_id,hire_date from employees order by 3;
还有一种用法是按照多列排序,并且按照不同的方式,有个规律按照第一例的策略为先,然后才是第二例。下面的例子是按照department_id 升序为主,然后在按照第二例降序
select last_name, department_id, salary from employees order by department_id, salary desc;
3、列出有提成员工的姓名,工资和提成,按工资降序排列?
select last_name,salary,commission_pct from employees where commission_pct is not null order by 2 desc ,3 asc;
4、用替代变量,给定名字,查员工 id,工资,例如输出工资大于10000的员工信息
select last_name,employee_id,salary from employees where salary > &slary;
5、指定manager_id 的内容,并按照指定列 last_name 排序
select employee_id,last_name,salary,department_id from employees where manager_id= &mgr_num order by &order_col
替代变量
使用替代变量:
– 使用&指定变量
– 每次重复使用变量值,如果您不想提示用户的情况下,请使用&&
使用替代变量,可以替代以下内容:
– WHERE 条件
– ORDER BY 子句
– 列表达式
– 表名
– 整个 SELECT 语句
– 字符和日期替代变量要加单引号如:‘first_name‘
1、输出员工id
2、输入job_id 为指定内容的员工姓名、部门ID、年薪等信息
select last_name, department_id, salary*12 from employees where job_id = ‘&job_title‘;
3、指定列名进行查询和排序
select employee_id, last_name, job_id, &&column_name from employees order by &column_name ;
定义变量
1、使用 DEFINE 命令
---使用DEFINE命令创建和分配一个变量的值。
---使用UNDEFINE命令来删除一个变量
DEFINE employee_num = 200
SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = &employee_num ;
UNDEFINE employee_num
2、使用 VERIFY 命令
使用 VERIFY 命令来显示的替代变量之前和之后SQL开发人员
替换替换变量的值:
SET VERIFY ON
SELECT employee_id,last_name,salary
FROM employees
WHERE employee_id = &employee_num;
本文出自 “记录点滴学习生活” 博客,转载请与作者联系!
以上是关于SQL 基础之order by 排序和代替变量的主要内容,如果未能解决你的问题,请参考以下文章