Orcle(条件查询、排序)

1、Orcle大小写敏感(条件为字符串)mysql数据库是否区分大小写可以配置

查询全部员工信息:

在查询某一个员工名字为KING的时候用大写和小写的查询结果是不同的:

2、日期格式敏感(默认日月年)

(1)默认格式

 (2)日期格式的修改(修改为年月日):

alter session set NLS_DATE_FORMAT='yyyy-mm-dd';

 session是当前有效,system是所有的都有效。

3、如果集合中含有空值,不能使用not in,但是可以使用in:

 使用not in按字面意思的理解应该有结果的,但是查询无果,也就是说集合中如果有空值,不能使用not in;

在使用in进行查询的时候,虽然表中有COMM为空的值但是不能查询出来,不为空的可以正常查询。

4、转义字符

如果在查询过程中出现和进行操作的字符冲突的情况就需要用转义字符进行转义,例如在进行模糊查询的时候要查询名字中含有下划线的员工,那么在sql语句中下划线就会被当做模糊查询中的下划线,代表任意一个字符,所以,这里要用到转义字符,将模糊查询中的下划线转移为真正的下划线。

5、sql优化

select *
from student
where  条件1 or/and 条件2

sql语句在执行where语句后的条件的时候,是由右向左执行的,当连接符为and的时候应该将条件执行结果为错误的写在右边,这样的话左边的便不必再去执行;

当连接符为or的时候,应该将条件的执行结果为错误的写在右边,这样的话左边的不必再去执行。

6、排序时空值的位置问题

(1)升序:空值在后

 (2)降序:空值在前

(3)降序的时候将空值放到后面:

原文地址:https://www.cnblogs.com/zhai1997/p/12337613.html