3、行过滤,用哪个关键字?
Having
11、索引的作用?创建索引有哪些注意事项?
提高查询效率。
创建索引时应该考虑该字段修改,删除的是否频繁、不要建立重复索引等。
12、如何优化SQL?
如:SQL索引优化、调整表的使用顺序,调整查询条件的先后顺序等。
13、写一个sql语句,查询二月份工资最高的人。
如: 表结构:
T1(id,name),T2(id, salary,month)
SELECT t1.name
FROM t1,t2
WHERE t1.id=t2.id
AND t2. salary=(SELECT MAX(salary) FROM
4、 T2 tab where tab. Id=t1.id)
AND T2. Month=2。
14、sql有哪些常用的聚合函数?
Max、min、sum、count、avg等。
15、oracle存储过程和函数的区别?
定义关键子不同,存储过程是procedure,函数是function、
存储过程不需要声明返回类型,函数需要声明返回类型。
存储过程可以返回多个值。
16、oracle的触发器种类和触发事件?
触发器种类:before、after、instead of
触发事件:insert、update、delete
17、使触发器禁用或者启用的SQL?
5、ALTER TRIGGER trigger_name DISABLE(禁用);
ALTER TRIGGER trigger_name ENABLE(启用);
ALTER TABLE table_name DISABLE ALL TRIGGERS(禁止所有的触发器);
ALTER TABLE table_name ENABLE ALL TRIGGERS(激活所有);
ALTER TRIGGER trigger_name COMPILE(重新编译触发器 );
18、索引有哪些类型?
从逻辑上分:单行索引、多行索引、函数索引、域索引、唯一索引、非唯一索引
从物理上分(DBA关
6、注):分区索引、非分区索引、B-TREE、正常型B树、反转型B树、位图索引。
19、重建索引的SQL?
Alter index index_name rebuild
20、怎样可以导致sql语句的索引失效?
(1)、隐式转换导致索引失效。这一点应当引起重视,也是开发中经常会犯的错误.,由于表的字段XX定义为varchar2(20),
但在查询时把该字段作为number类型以where条件传给Oracle。
(2)、普通索引中使用内部函数,如 select * from test where round(id)=10; 纠正方法应该建立函数
索引create index test_id_fbi_idx on test(round(id));
(3)、对索引列进行运算导致索引失效(+,-,*,/,! 等)
如:.....where sal+10000>30000 改为.....where sal>30000-10000
(4)、更多的like 函数的使用,not的使用等都会导致索引失效。
21、对于一个已经存在的项目,如果对一个SQL优化需要注意什么?
如果需要增加索引,一定要注意还有哪些SQl查询条件用到了这些字段,否则可能会引起其他的SQL效率低下,引发生产问题。