Мартин грубер понимание sql перевод Лебедева В. Н. Под редакцией Булычева В. Н. Москва, 1993 martin gruber


Download 1.45 Mb.
bet146/172
Sana26.01.2023
Hajmi1.45 Mb.
#1128343
1   ...   142   143   144   145   146   147   148   149   ...   172
Bog'liq
Грубер. Понимание SQL

Ïðèëîæåíèå A
ОТВЕТЫ ДЛЯ УПРАЖНЕНИЙ
Глава 1

  1. cnum

  2. rating

  3. Другим словом для строки является запись. Другим словом для столбца является поле.

  4. Потому что строки, по определению, находятся без какого либо определенного упорядочения.

Глава 2

  1. Символ (или текст) и номер

  2. Нет

  3. Язык Манипулирования Данными (ЯЗЫК DML)

  4. Это слово в SQL имеет специальное учебное значение

Глава 3


SELECT onum, amt, odate
FROM Orders;



SELECT *
FROM Customers
WHERE snum = 1001;



SELECT city, sname, snum, comm
FROM Salespeople;



SELECT rating, cname
FROM Customers
WHERE city = 'SanJose';



SELECT DISTINCT snum
FROM Orders;

Глава 4


SELECT *
FROM Orders
WHERE amt > 1000;



SELECT sname, city
FROM Salespeople
WHERE city = 'London' AND comm > .10;



SELECT *
FROM Customers
WHERE rating > 100 OR city = 'Rome';

или
SELECT *
FROM Customers
WHERE NOT rating < = 100 OR city = 'Rome';

или
SELECT *
FROM Customers
WHERE NOT (rating < = 100 AND city < > 'Rome');

Могут быть еще другие решения.




onum amt odate cnum snum
3001 18.69 10/03/1990 2008 1007
3003 767.19 10/03/1990 2001 1001
3005 5160.45 10/03/1990 2003 1002
3009 1713.23 10/04/1990 2002 1003
3007 75.75 10/04/1990 2004 1002
3008 4723.00 10/05/1990 2006 1001
3010 1309.95 10/06/1990 2004 1002
3011 9891.88 10/06/1990 2006 1001




onum amt odate cnum snum
3001 18.69 10/03/1990 2008 1007
3003 767.19 10/03/1990 2001 1001
3006 1098.16 10/03/1990 2008 1007
3009 1713.23 10/04/1990 2002 1003
3007 75.75 10/04/1990 2004 1002
3008 4723.00 10/05/1990 2006 1001
3010 1309.95 10/06/1990 2004 1002
3011 9891.88 10/06/1990 2006 1001




SELECT *
FROM Salespeople;

Глава 5


SELECT *
FROM Orders
WHERE odate IN (10/03/1990,10/04/1990);


  1. и

SELECT *
FROM Orders
WHERE odate BETWEEN 10/03/1990 AND 10/04,1990;



SELECT *
FROM Customers
WHERE snum IN (1001,1004);



SELECT *
FROM Customers
WHERE cname BETWEEN 'A' AND 'H';

ПРИМЕЧАНИЕ: В ASCII базовой системе Hoffman не будет выведен из-за конечных пробелов после H. По той же самой причине вторая граница не может быть G, поскольку она не выведет имена Giovanni и Grass. G может использоваться в сопровождении с Z, так чтобы следовать за другими символами в алфавитном порядке, а не предшествовать им, как это делают пробелы.




SELECT *
FROM Customers
WHERE cname LIKE 'C%';



SELECT *
FROM Orders
WHERE amt <> 0 AND (amt IS NOT NULL);

или

Download 1.45 Mb.

Do'stlaringiz bilan baham:
1   ...   142   143   144   145   146   147   148   149   ...   172




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling