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


SELECT sname, city FROM Salespeople WHERE city = "LONDON"


Download 1.45 Mb.
bet13/172
Sana26.01.2023
Hajmi1.45 Mb.
#1128343
1   ...   9   10   11   12   13   14   15   16   ...   172
Bog'liq
Грубер. Понимание SQL

SELECT sname, city
FROM Salespeople
WHERE city = "LONDON";

Когда предложение WHERE представлено, программа базы данных просматривает всю таблицу по одной строке и исследует каждую строку, чтобы определить верно ли утверждение. Следовательно, для записи Peel, программа рассмотрит текущее значение столбца city, определит что оно равно "London", и включит эту строку в вывод. Запись для Serres не будет включена, и так далее. Вывод для вышеупомянутого запроса показан в Рисунке 3.6.
=============== SQL Execution Log ============
| SELECT sname, city |
| FROM Salespeople |
| WHERE city = 'London' |
| ============================================= |
| sname city |
| ------- ---------- |
| Peel London |
| Motika London |
===============================================

Рисунок 3.6: SELECT c предложением WHERE


Давайте попробуем пример с числовым полем в предложении WHERE. Поле rating таблицы Заказчиков предназначено, чтобы разделять заказчиков на группы, основанные на некоторых критериях, которые могут быть получены в итоге через этот номер. Возможно это — форма оценки кредита или оценки основанные на опыте предыдущих приобретений. Такие числовые коды могут быть полезны в реляционных базах данных как способ подведения итогов сложной информации. Мы можем выбрать всех заказчиков с рейтингом 100, следующим образом:
SELECT *
FROM Customers
WHERE rating = 100;

Одиночные кавычки не используются здесь потому, что оценка — это числовое поле. Результаты запроса показаны в Рисунке 3.7.
Предложение WHERE совместимо с предыдущим материалом в этой главе. Другими словами, вы можете использовать номера столбцов, устранять дубликаты, или переупорядочивать столбцы в команде SELECT которая использует WHERE. Однако, вы можете изменять порядок столбцов для имен только в предложении SELECT, но не в предложении WHERE.
=============== SQL Execution Log ============
| SELECT * |
| FROM Customers |
| WHERE rating = 100; |
| ============================================= |
| сnum cname city rating snum |
| ------ -------- ------ ---- ------ |
| 2001 Hoffman London 100 1001 |
| 2006 Clemens London 100 1001 |
| 2007 Pereira Rome 100 1001 |
===============================================

Рисунок 3.7: SELECT с числовым полем в предикате


РЕЗЮМЕ
Теперь вы знаете несколько способов заставить таблицу давать вам ту информацию, какую вы хотите, а не просто выбрасывать наружу все ее содержание. Вы можете переупорядочивать столбцы таблицы или устранять любую из них. Вы можете решать, хотите вы видеть дублированные значения или нет.
Наиболее важно то, что вы можете устанавливать условие называемое предикатом, которое определяет или не определяет указанную строку таблицы из тысяч таких же строк, будет ли она выбрана для вывода.
Предикаты могут становиться очень сложными, предоставляя вам высокую точность в решении, какие строки вам выбирать с помощью запроса. Именно эта способность решать точно, что вы хотите видеть, делает запросы SQL такими мощными.
Следующие несколько глав будут посвещены, в большей мере, особенностям, которые расширяют мощность предикатов. В Главе 4 вам будут представлены операторы иные чем те, которые используются в условиях предиката, а также способы объединения многочисленых условий в единый предикат.
РАБОТА С SQL

  1. Напишите команду SELECT которая бы вывела номер порядка, сумму, и дату для всех строк из таблицы Порядков.

  2. Напишите запрос который вывел бы все строки из таблицы Заказчиков, для которых номер продавца = 1001.

  3. Напишите запрос который вывел бы таблицу со столбцами в следующем порядке: city, sname, snum, comm.

  4. Напишите команду SELECT которая вывела бы оценку (rating), сопровождаемую именем каждого заказчика в San Jose.

  5. Напишите запрос, который вывел бы значения snum всех продавцов в текущем порядке из таблицы Порядков без каких бы то ни было повторений.

(См. Приложение A для ответов.)



Download 1.45 Mb.

Do'stlaringiz bilan baham:
1   ...   9   10   11   12   13   14   15   16   ...   172




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