--赋予查询权限
GRANT SELECT ON Y2165.USERINFO TO yz
--创建数据表
create table studentinfo
(stuno number primary key not null)
alter table userinfo
add (stuage number ,stuname nvarchar2(100));
--添加语句
INSERT INTO "STUDENTINFO" VALUES (1, '微冷的雨', 18);
INSERT INTO "STUDENTINFO" VALUES (2, '彪哥', 58);
INSERT INTO "STUDENTINFO" VALUES (4, '老付', 28);
INSERT INTO "STUDENTINFO" VALUES (5, '迟老师', 68);
INSERT INTO "STUDENTINFO" VALUES (6, 'C哥', 98);
INSERT INTO "STUDENTINFO" VALUES (7, '邵老师', 78);
INSERT INTO "STUDENTINFO" VALUES (8, '张晓光', 38);
--distinct:去除表中重复数据(不重复显示数据)
select DISTINCT "stuname","stuage" from studentinfo
--按照姓名升序,如果姓名相同按照年龄降序排序
SELECT "stuno","stuname","stuage"
FROM studentinfo
WHERE "stuage">17
ORDER BY "stuname" ASC, "stuage" DESC
--使用别名显示姓 名、年 龄和身份证号列
SELECT "stuname" as "姓 名",
"stuage" as "年 龄", "stuno" as 身份证号
FROM studentinfo
--取出stuName,stuAge列不存在重复数据的记录
SELECT "stuname","stuage"
FROM studentinfo
GROUP BY "stuname","stuage"
HAVING(COUNT("stuname"||"stuage") <2) --重复的个数小于2(为1)
--创建学生表的备份表
create table studentbak
as
select * from studentinfo
--删除表中多余的重复记录只留一行id最小的数据
DELETE FROM studentinfo WHERE "stuno" NOT IN
(
SELECT MAX("stuno") FROM studentinfo GROUP BY "stuname","stuage"
)
SELECT "stuno"
FROM studentinfo
INTERSECT --交集(显示共有内容)
SELECT DISTINCT "stuno" from studentbak
SELECT "stuno"
FROM studentinfo
MINUS --减集(显示第一个查询减去第二个后的剩余记录)
SELECT DISTINCT "stuno" from studentbak
GRANT SELECT ON Y2165.USERINFO TO yz
--创建数据表
create table studentinfo
(stuno number primary key not null)
alter table userinfo
add (stuage number ,stuname nvarchar2(100));
--添加语句
INSERT INTO "STUDENTINFO" VALUES (1, '微冷的雨', 18);
INSERT INTO "STUDENTINFO" VALUES (2, '彪哥', 58);
INSERT INTO "STUDENTINFO" VALUES (4, '老付', 28);
INSERT INTO "STUDENTINFO" VALUES (5, '迟老师', 68);
INSERT INTO "STUDENTINFO" VALUES (6, 'C哥', 98);
INSERT INTO "STUDENTINFO" VALUES (7, '邵老师', 78);
INSERT INTO "STUDENTINFO" VALUES (8, '张晓光', 38);
--distinct:去除表中重复数据(不重复显示数据)
select DISTINCT "stuname","stuage" from studentinfo
--按照姓名升序,如果姓名相同按照年龄降序排序
SELECT "stuno","stuname","stuage"
FROM studentinfo
WHERE "stuage">17
ORDER BY "stuname" ASC, "stuage" DESC
--使用别名显示姓 名、年 龄和身份证号列
SELECT "stuname" as "姓 名",
"stuage" as "年 龄", "stuno" as 身份证号
FROM studentinfo
--取出stuName,stuAge列不存在重复数据的记录
SELECT "stuname","stuage"
FROM studentinfo
GROUP BY "stuname","stuage"
HAVING(COUNT("stuname"||"stuage") <2) --重复的个数小于2(为1)
--创建学生表的备份表
create table studentbak
as
select * from studentinfo
--删除表中多余的重复记录只留一行id最小的数据
DELETE FROM studentinfo WHERE "stuno" NOT IN
(
SELECT MAX("stuno") FROM studentinfo GROUP BY "stuname","stuage"
)
SELECT "stuno"
FROM studentinfo
INTERSECT --交集(显示共有内容)
SELECT DISTINCT "stuno" from studentbak
SELECT "stuno"
FROM studentinfo
MINUS --减集(显示第一个查询减去第二个后的剩余记录)
SELECT DISTINCT "stuno" from studentbak