Скачиваний:
25
Добавлен:
01.04.2014
Размер:
761.34 Кб
Скачать

26 Понимание sql

_____________________________________________________________________

ГЛ. 3

определенные столбцы таблицы.

Это выполняется легко, простым исключением столбцов которые вы не хотите

видеть, из части команды SELECT. Например, запрос

SELECT sname, comm

FROM Salespeople;

будет производить вывод показанный на Рисунке 3.2.

=============== SQL Execution Log ============

| |

| SELECT snum, comm |

| FROM Salespeople; |

| |

| ==============================================|

| sname comm |

| ------------- --------- |

| Peel 0.12 |

| Serres 0.13 |

| Motika 0.11 |

| Rifkin 0.15 |

| Axelrod 0.10 |

===============================================

Рисунок 3.2: Выбор определенных столбцов

Могут иметься таблицы которые имеют большое количество столбцов

содержащих данные, не все из которых являются относящимися к

поставленой задаче. Следовательно, вы можете найти способ подбора и

выбора только полезных для Вас столбцов.

Переупорядочение столбца

Даже если столбцы таблицы, по определению, упорядоченны, это не

означает что вы будете восстанавливать их в том же порядке.

Конечно, звездочка (*) покажет все столбцы в их естественном порядке,

но если вы укажете столбцы отдельно, вы можете получить их в том

порядке котором хотите. Давайте рассмотрим таблицу Порядков,

содержащую дату приобретения(odate), номер продавца(snum), номер

порядка(onum), и суммы приобретения(amt):

ИСПОЛЬЗОВАНИЕ SQL ДЛЯ ИЗВЛЕЧЕНИЯ

ИНФОРМАЦИИ ИЗ ТАБЛИЦ 27

______________________________________________________________________

SELECT odate, snum, onum, amt

FROM Orders;

Вывод этого запроса показан на Рисунке 3.3.

============= SQL Execution Log =============

| |

| SELECT odate, snum, onum, amt |

| FROM Orders; |

| |

| ------------------------------------------------|

| odate snum onum amt |

| ----------- ------- ------ --------- |

| 10/03/1990 1007 3001 18.69 |

| 10/03/1990 1001 3003 767.19 |

| 10/03/1990 1004 3002 1900.10 |

| 10/03/1990 1002 3005 5160.45 |

| 10/03/1990 1007 3006 1098.16 |

| 10/04/1990 1003 3009 1713.23 |

| 10/04/1990 1002 3007 75.75 |

| 10/05/1990 1001 3008 4723.00 |

| 10/06/1990 1002 3010 1309.95 |

| 10/06/1990 1001 3011 9891.88 |

| |

===============================================

Рисунок 3.3: Реконструкция столбцов

Как вы можете видеть, структура информации в таблицах - это просто

основа для активной перестройки структуры в SQL.

УДАЛЕНИЕ ИЗБЫТОЧНЫХ ДАННЫХ

DISTINCT (ОТЛИЧИЕ) - аргумент который обеспечивает Вас

способом устранять двойные значения из вашего предложения SELECT.

Предположим что вы хотите знать какие продавцы в настоящее время

имеют свои порядки в таблице Порядков. Под порядком (здесь и далее)

будет пониматься запись в таблицу Порядков, регистрирующую приобре-

тения сделанные в определенный день определенным заказчиком у опре-

деленного продавца на определенную сумму).

Вам не нужно знать, сколько порядков имеет каждый; вам нужен только

список номеров продавцов (snum). Поэтому Вы можете ввести:

SELECT snum

FROM Orders;

для получения вывода показанного в Рисунке 3.4

Соседние файлы в папке ПОНИМАНИЕ SQL