SQL стандарт в СУБД MS SQL SERVER, ORACLE, VFP И ACCESS: манипулирование данными. Семенова И.И. - 15 стр.

UptoLike

Составители: 

14
Точное несовпадение значений одного из полей.
10. Вывести список сотрудников и их должности, которые не являются
служащими:
в VFP, MS SQL Server, Access:
SELECT Surname, Name, Lastname, Post FROM Staff WHERE
NOT(Type_post = 'служащий')
В MS SQL Server, если в некоторых строках в столбце Type_post будет
значение NULL, то эти строки не попадут в результат выполнения запроса,
хотя логика функции NOT( ) должна вернуть истину.
в Oracle:
SELECT Surname, Name, Lastname, Post FROM ADMIN_PAY.Staff
WHERE NOT(Type_post = 'служащий');
В Oracle в отличие от MS SQL Server, если в
некоторых строках в
столбце Type_post будет значение NULL, эти строки попадут в результат
выполнения запроса.
NOT( ) – функция "логического НЕ". В примере если условие в
скобках вернет ИСТИНУ, то функция NOT( ) изменит его на
противоположное ЛОЖЬ и в результат строка помещена не будет.
Поэтому в запросе будут выбраны только те работники, которые не
являются служащими
.
11. Вывести список сотрудников, которые не являются бухгалтерами,
и их даты поступления на работу (рис. 6):
в VFP, MS SQL Server, Access:
SELECT Name, Lastname, Surname, Date_input FROM Staff WHERE
NOT(Post = 'бухгалтер')
в Oracle:
SELECT Name, Lastname, Surname, Date_input FROM
ADMIN_PAY.Staff WHERE NOT(Post = 'бухгалтер');
Name Lastname Surname Date_input
Василий Михайлович Сидоров 14.11.1999
Петр Аркадьевич Васильков 30.11.2000
Иван Васильевич Артемьев 10.02.1998
Савел Игнатьевич Соянов 25.06.1980
Анна Михайловна Иванова 12.11.1979
Рис. 6. Список сотрудников, не являющихся
бухгалтерами