· 7 years ago · Dec 20, 2018, 05:16 AM
1DROP TABLE IF EXISTS t1;
2CREATE TABLE t1 (
3 id NUMBER NOT NULL PRIMARY KEY,
4 name VARCHAR(20) NOT NULL,
5 type VARCHAR(20) NOT NULL,
6 firm VARCHAR(20) NOT NULL
7);
8
9Ðачальное заполнение таблицы
10
11INSERT INTO t1 (id,name,type,firm) VALUES (1,'Access','РелÑц','Microsoft');
12INSERT INTO t1 (id,name,type,firm) VALUES (2,'FoxPro','РелÑц','Microsoft');
13INSERT INTO t1 (id,name,type,firm) VALUES (3,'Oracle7','РелÑц','Oracle');
14INSERT INTO t1 (id,name,type,firm) VALUES (4,'Orion3','ОО','Orion');
15INSERT INTO t1 (id,name,type,firm) VALUES (5,'Orion4','ОО','Orion');
16INSERT INTO t1 (id,name,type,firm) VALUES (6,'Delphi','ОО','Microsoft');
17INSERT INTO t1 (id,name,type,firm) VALUES (7,'Essbase1','Многом','Arbor');
18INSERT INTO t1 (id,name,type,firm) VALUES (8,'Essbase2','Многом','Arbor');
19INSERT INTO t1 (id,name,type,firm) VALUES (9,'Orion5','Многом','Orion');
20INSERT INTO t1 (id,name,type,firm) VALUES (10,'Oracle8','Многом','Oracle');
21
22Ð¸Ð»ÑŒÑ Ðº
231.ВывеÑти данные о СУБД из ÑпиÑка, задаваемого Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ параметра.
24ACCEPT param CHAR PROMPT 'Введите Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ Ð¡Ð£Ð‘Ð”: '
25SELECT * FROM t1
26WHERE name IN (¶m)
27
28
292.ВывеÑти чиÑло СУБД каждого типа, иÑÐºÐ»ÑŽÑ‡Ð°Ñ Ð¡Ð£Ð‘Ð”, фирму-разработчик которых задавать Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ параметра.
30ACCEPT param CHAR PROMPT 'Введите название фирмы: '
31SELECT type, COUNT(name) FROM t1
32WHERE firm NOT LIKE '¶m'
33GROUP BY type
34
35
363.ВывеÑти Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ Ñ„Ð¸Ñ€Ð¼, которые разрабатывают СУБД тех же типов, что и типы СУБД, Ñодержащих в названии букву, указанную в параметре.
37ACCEPT param CHAR PROMPT 'Введите тип СУБД: '
38SELECT firm FROM t1
39WHERE type LIKE '%¶m%'
40GROUP BY firm
41
42
43
44
45Ð¸Ð»ÑŒÑ Ð¿
461.ВывеÑти ÑпиÑок фирм-разработчиков СУБД, начинающихÑÑ Ñ Ð±ÑƒÐºÐ², не попадающих в диапазон, задаваемый Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ параметров.
47ACCEPT start CHAR PROMPT 'Введите букву начала диапазона: '
48ACCEPT end CHAR PROMPT 'Введите  букву конца диапазона: '
49SELECT firm FROM t1
50WHERE firm NOT BETWEEN start AND end
51WHERE LEFT(firm, 1) < &start and LEFT(firm, 1) > &end;
52///Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ left берет буквы Ñлева
53
54
552.ВывеÑти чиÑло СУБД каждого типа, иÑÐºÐ»ÑŽÑ‡Ð°Ñ Ð¡Ð£Ð‘Ð”, название которой задавать Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ параметра.
56ACCEPT param CHAR PROMPT 'Введите название СУБД: '
57SELECT type, COUNT(name) FROM t1
58WHERE name NOT LIKE '¶m'
59GROUP BY type
60
613.ВывеÑти Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ Ð¡Ð£Ð‘Ð”, имеющих типы, отличные от типов СУБД, выпуÑкаемые фирмой, указанной в параметре.
62ACCEPT param CHAR PROMPT 'Введите название фирмы: '
63SELECT name FROM t1
64WHERE type NOT IN(SELECT type FROM t1 WHERE firm == ‘¶m’)
65
66HTML-форма: флажки-переключатели.
67
68
69данил
701.ВывеÑти данные об СУБД Ð´Ð»Ñ Ñ‚Ð¸Ð¿Ð¾Ð², не попадающих в ÑпиÑок, задаваемый Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ параметра.
71ACCEPT param CHAR PROMPT 'Введите типы Ñубд: '
72SELECT * FROM t1
73WHERE type NOT IN '¶m';
74
752.ВывеÑти ÑпиÑок СУБД, кроме первой или поÑледней (задавать Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ параметра) по алфавиту.
76ACCEPT param CHAR PROMPT 'Введите 0 чтобы иÑключить первый или 1 чтобы иÑключить поÑледний’
77SELECT * FROM t1
78WHERE ‘¶m’ = 0 AND id != (SELECT MIN(id) FROM t1) OR ‘¶m’ = 1 AND id != (SELECT MAX(id) FROM t1)
79ORDER BY name
80
813.ВывеÑти типы СУБД, разрабатываемых теми же фирмами, которые разрабатывают СУБД, Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… не попадают в диапазон, задаваемый параметрами.
82ACCEPT start CHAR PROMPT 'Введите букву начала диапазона: '
83ACCEPT end CHAR PROMPT 'Введите  букву конца диапазона: '
84SELECT type FROM t1
85WHERE firm NOT BETWEEN start AND end
86//WHERE LEFT(type, 1) < &start and LEFT(type, 1) > &end
87///Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ left берет буквы Ñлева