русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Ключевые слова Аll и DISTINCT


Дата добавления: 2015-07-09; просмотров: 1019; Нарушение авторских прав


До этого момента мы рассматривали, как извлечь все или заданные колонки из одной или нескольких таблиц. Для управления выводом дублирующихся строк результирующего набора данных можно использовать ключевые слова ALL или DISTINCT в предложении SELECT. Ключевое слово DISTINCT указывает, что строки результирующего набора данных должны быть уникальны, тогда как ключевое слово ALL указывает, что возвращать следует все строки. Например, для извлечения списка стран, в которых имеются заказчики, можно использовать следующий запрос:

• SELЕCT DISTINCT Country FROM Customers

Ключевое слово ALL используется по умолчанию. Если в запросе требуется вывести более одного поля и при этом использовано слово DISTINCT, то результирующий набор данных будет содержать различные строки, но некоторые значения одного и того же поля в разных строках могут совпадать.

Ключевое слово ТОР может быть использовано для возврата первых n строк или первых n процентов таблицы. Например, запрос:

SELECT TOP 10 * FROM PRODUCTS ORDER BY ProductName

возвращает первые 10 продуктов из таблицы, тогда как запрос:

SELECT TOP 25 PERCENT * FROM PRODUCTS ORDER BY ProductName

вернет первую четверть записей таблицы.

Язык SQL может быть использован для обновления и удаления данных, копирования записей в другие таблицы и выполнения многих других операций. Мы рассмотрим операторы UPDATE, DELETE и INSERT, используемые для решения некоторых из этих задач.

Для изменения значений в одной или нескольких полях таблицы применяется оператор UPDATE:

UPDATE имя таблицы SET поле1 =выражение1 [, поле2 = выражение2] [,...] [WHERE критерий]

Выражение в предложении SET может быть константой или результатом вычислений. Например, для повышения цен всех продуктов, стоимостью менее 10 долл. можно выполнить следующий запрос:



UPDATE Products

SET UnitPrice = UnitPrice * 1.1

WHERE UnitPrice< 10

Для удаления строк из таблиц следует использовать оператор DELETE:

DELETE FROM имя таблицы WHERE критерий

 

Внимание! Предложение WHERE не является обязательным, но если вы забудете его включить, то из таблицы будут удалены все записи.

Например, для удаления из списка всех продуктов, которые больше не поставляются, можно выполнить следующий запрос:

DELETE

FROM Products WHERE Discontinued = 1

Отметим, что полезно использовать оператор SELECT с тем же синтаксисом, что и оператор DELETE, чтобы проверить, какие именно записи будут удалены, прежде чем действительно их удалить. Ниже показан оператор SELECT для приведенного выше запроса на удаление данных:

SELECT ProductName FROM Products WHERE Discontinued =1

Можно использовать в предложении WHERE более сложный критерий для определения того, какие записи должны быть удалены. Предположим, нам нужно удалить из списка клиентов тех из них, кто не имел заказов до определенной даты. Сначала для этого необходимо выполнить следующий оператор SELECT, чтобы определить, что именно мы удаляем:

SELECT CompanyName FROM Customers

WHERE Customers.CustomerlD NOT IN

(SELECT CustomerlD FROM Orders WHERE OrderDate > 01/01/96),

 

а затем заменить оператор SELECT на оператор DELETE:

DELETE FROM Customers

WHERE Customers.CustomerlD NOT IN

(SELECT CustomerlD FROM Orders WHERE OrderDate > 01/01/96)

 

При использовании в операторах SQL даты или времени, а также полей, содержащих такие данные, следует уточнить синтаксис этих предложений в документации из комплекта поставки используемой СУБД



<== предыдущая лекция | следующая лекция ==>
Связывание таблиц | Модификация метаданных


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.321 сек.