Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Формування запитів на вибірку даних в SQL

Реферат Формування запитів на вибірку даних в SQL





Для формування запитів на вибірку даних в SQL використовується оператор SELECT. Його формат представлений нижче: SELECT [ALL I DISTINCT] selectitemcommalist FROM tablereferencecommalist [WHERE conditional_expression] [GROUP BY column_name_commalist] [HAVING conditionalexpression] [ORDER BY order item commalist] є досить складним оператором, що дозволяє вибирати дані з однієї або декількох таблиць, виконувати угруповання , обробку даних за допомогою агрегатних функцій, формувати вкладені запити і т.д. Вираз SELECT обробляється цілком, а не «порядково», як зазвичай буває в мовах програмування. У кілька узагальненому вигляді схема виконання оператора SELECT виглядає наступним чином:

1) виконується розділ FROM;

2) виконується розділ WHERE (якщо є);

) виконується GROUP BY (якщо є);

4) виконується HAVING (якщо є);

5) виконуються визначення в розділі SELECT:

6) виконується ORDER BY (якщо є).

Почнемо з розгляду обов'язкового розділу SELECT. У ньому вказується список елементів вибірки select-item-commalist, який не повинен бути порожнім. Також може використовуватися ключове слово ALL або DISTINCT. Перше з них вказує, що в результаті запиту можуть бути повторювані рядки, друге - що повторення відкидаються. Наприклад, використовується ключове слово

DISTINCT і є три співпадаючих рядки, тоді в результаті з них залишиться тільки одна. Коли явно нічого не вказано, то мається на увазі ALL.



Розглянемо тепер приклад із завданням імені стовпця і використанням текстової константи в стовпці. Якщо необхідно явно вказати, як стовпець буде називатися в виведених результатах запиту, це можна зробити в списку елементів вибірки в розділі SELECT. Нове ім'я вказується після вихідного назвою стовпчика через про - бел або після необов'язкового ключового слова «as». Нижче наведено приклад, в якому список прізвищ та ініціалів студентів супроводжується підписом «Прізвище та ініціали» .DISTINCT «Прізвище та ініціали» as Label1/FIO FROM Students

Підпис задається за допомогою строкової константи, які в SQL беруться в одинарні лапки. Називатися стовпець з підписом буде Label 1. Результат виконання цього запиту для набору даних з табл. 7.2 представлений в табл. 7.3. Як зазначалося вище, ключове слово «as» в SELECT можна пропустити, але іноді воно дозволяє зробити текст на SQL більш зрозумілим.







Порівняння може проводитися не тільки для чисел, а й для строкових значень (посимвольно), дат і т.д.

Якщо необхідно отримати всі значення з інтервалу, можна використовувати конструкцію BETWEEN ... AND .... Нехай є таблиця Book з інформацією про книги, і в ній цілочисельний стіл - Бец Year, що містить рік видання книги. Отримати всі книги, виданий - ниє з 1990 по 2002 рік включно, можна за допомогою наведено - ного нижче запиту (тому «Year» для MS SQL Server є ключі - вим словом, назва стовпчика знову у квадратних дужках). SELECT * FROM Book (Year) BETWEEN +1990 AND +2002 Аналогічний результат дасть запит * FROM Book [Year] gt;=1 990 AND [Year] lt;=2 002

Якщо навпаки потрібні всі книги, крім виданих у цей період, можна використовувати конструкцію NOT BETWEEN: * FROM Book [Year] NOT BETWEEN 1990 AND 2002










Для наведеного вище прикладу запит SELECT * FROM Results GROUP BY StudID повинен привести до помилки. При використанні GROUP BY, в розділі SELECT можуть бути вказані тільки ті стовпці, але яким вироб - диться угруповання. Інші стовпці можуть зазначатися, якщо вони ви - ступають в якості аргументів а1регатних функцій, сопоставляющих групі значень одне.

Нижче наведені основні агрегатні функції:

- середнє значення: AVG ((DISTINCT | ALL) lt; вираз gt;);

- максимум: МАХ ([DISTINCT | ALL] lt; вираз gt;);

- мінімум: MIN ([DISTINCT I ALL] lt; вираз gt;);

- сума: SUM ([DISTINCT I ALL] lt; вираз gt;);

- кількість: COUNT ((DISTINCT | ALL) lt; вираз gt;) або COUNT (*).





















Угрупування може проводитися і по декількох стовпцях: для цього в розділі GROUP BY потрібно перерахувати їх через кому. Крім того, можна групувати строю! за значенням деякої функції від даних у стовпцях. Наприклад, на рис. 7.1. а представлена ??таблиця Device, в якій є стовпець DatePurch типу Date. У стовп - це містят...


сторінка 1 з 2 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Як бути, якщо контрагент за договором - нерезидент?
  • Реферат на тему: Як враховувати рух грошей, якщо компанія розраховується через електронний г ...
  • Реферат на тему: Анексія Криму, як можна вірішіті Конфлікт України с Россией чі можна его ві ...
  • Реферат на тему: Опісові композіційно-мовленнєві форми в творах Т. Прохаська &З цього можна ...
  • Реферат на тему: Якщо ваш працівник затриманий чи засуджений