数据库部分
四:给你2张表如下所示:
表A
name grade
张三 1
李四 2
王五 3表B
name age
张三 23
李四 42
王五 21
赵六 31查询结果如下:
name grade age
张三 1 23
李四 2 42
王五 3 21
赵六 null 31
(1)请写出相应的sql语句?
(2)请写出在age和name在A表中而不再B表中的sql语句?//五:给你下面的1张表
表Dept;
id name
001 sed
002 df
003 fdfd
003 dge
001 lo
004 uy
(1)如果id要建立索引,请写出sql语句查询出数据表所有有重复字段的列id?
(2)请用一个sql或者一组sql语句实现对重复数据的删除,比如(003 fdfd)保留而(003 dge)被删除?
四:给你2张表如下所示:
表A
name grade
张三 1
李四 2
王五 3表B
name age
张三 23
李四 42
王五 21
赵六 31查询结果如下:
name grade age
张三 1 23
李四 2 42
王五 3 21
赵六 null 31
(1)请写出相应的sql语句?
(2)请写出在age和name在A表中而不再B表中的sql语句?//五:给你下面的1张表
表Dept;
id name
001 sed
002 df
003 fdfd
003 dge
001 lo
004 uy
(1)如果id要建立索引,请写出sql语句查询出数据表所有有重复字段的列id?
(2)请用一个sql或者一组sql语句实现对重复数据的删除,比如(003 fdfd)保留而(003 dge)被删除?
from A a,B b
where a.name=b.name(+)
2)、select a.name,a.age
from A a,B b
where (a.name ,a.age) not in (select name,age from B)
(2)delete * from dept where id=(select id from dept a,dept b where a.id=b.id)
from A a,B b
where a.name=b.name(+)
2)、select a.name ,a.grade from A a where
a.name not in (select a.name
from A a,B b
where a.name = b.name);五(1)select * from dept a,dept b where a.id=b.id
(2)delete from dept where id in(
select id from(select d.id,row_number() over(partition by id order by id) row_flag from dept d)t
where t.row_flag > 1)