SQL限制和排序数据
1、Oracle的Where条件值,字符串和日期都必须以单引号括起来。
模糊查询:
like 'S%' 以S开头的任意字符
like 'S_' 以S开头的任意字符结尾的两个字符
like '_o%' 查找第二个字符是以O的字符串
_、%都是通配符,如果想将通配符转意成一般字符必须用到 ESCAPE 来定义转意字符例:
select * from employees where JOB_ID like 'SH\_%' ESCAPE '\';
2、排序
Oracle除了可以使用列名进行排序以外,还可以使用别名进行排序 例:
select last_name as xing,First_name from employees order by xing;
还可以根据查询内容的列的顺序选择第n列进行排序,例:
select * from employees order by 3;
还可以根据多个字段进行排序:
select first_name,last_name,email from employees order by last_name asc,first_name desc;
3、替代变量
根据用户输入的值进行检索:
select * from employees where employee_id=&employee_id;
如果是字符串和日期值,则需要在变量的前后加上单引号:
select * from employees where last_name='&name';
变量可放在 SELECT、FROM、WHERE、ORDER BY。
&变量名,只有用到了就得输入 例:
select * from employees where last_name='&name' AND First_name ='&name';
上例中需要输入两次值。
&&变量名 这个替代变量有多处用到,则只需要输入一次,即可例:
select first_name,&&columnName,Email from employees order By &columnName;
定义替代变量
DEFINE EmployeeName='Last_Name'
select * from employees
order by &EmployeeName;
删除变量:
UNDEFINE [变量名]; 例:
UNDEFINE EmployeeName;
在运行脚本时,想要只看结果不看替代变量的显示过程,执行命令“
SET verify off;
显示执行过程:
set verify on;
转载于:https://www.cnblogs.com/raphael5200/p/5114813.html