forked from hanaboy/SQL
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTABLESAMPLE.SQL
30 lines (27 loc) · 1.36 KB
/
TABLESAMPLE.SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
CREATE SCHEMA DEVTEST;
DROP TABLE "DEVTEST"."MYEMPLOYEES" CASCADE;
CREATE COLUMN TABLE "DEVTEST"."MYEMPLOYEES"
(
"EMPID" INTEGER,
"EMP" VARCHAR(20),
"ROLE" VARCHAR(20),
"SALARY" INTEGER
);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(1,'Christiano','Manager',500000);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(2,'Eric','Manager',350000);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(3,'Ryan','Director',450000);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(4,'Bryan','Director',150000);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(5,'Doreen','Manager',500000);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(6,'Gabriel','Manager',350000);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(7,'Angel','Director',450000);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(8,'Robin','Director',150000);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(9,'Sarah','Manager',500000);
INSERT INTO "DEVTEST"."MYEMPLOYEES" VALUES(10,'Peter','Manager',350000);
SELECT 'System' "Method", COUNT(*) "Count", AVG(SALARY) AS "Avg. Salary" FROM DEVTEST.MYEMPLOYEES TABLESAMPLE SYSTEM (50)
UNION ALL
SELECT 'Bernoulli', COUNT(*), AVG(SALARY) FROM DEVTEST.MYEMPLOYEES TABLESAMPLE BERNOULLI (50)
UNION ALL
SELECT 'All Records', COUNT(*), AVG(SALARY) FROM DEVTEST.MYEMPLOYEES;
SELECT 'System' "Method", * FROM DEVTEST.MYEMPLOYEES TABLESAMPLE SYSTEM (50)
UNION ALL
SELECT 'Bernoulli', * FROM DEVTEST.MYEMPLOYEES TABLESAMPLE BERNOULLI (50);