Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Добавление записи INSERT INTO. ⇐ ПредыдущаяСтр 3 из 3
1 способ: Добавление данных в указанные поля. INSERT INTO ПоставщикиБетона ( Город, Заметки ) VALUES ([Уфа], [Производство бетона любой марки]); После фразы INSERT INTO указывается имя таблицы, за которой следует список полей, список может содержать только те поля, в которых необходимо занести значения. Количество значений указывается после служебного слова VALUES и их типы должны соответствовать содержимому списка полей. 2 способ: Добавление записей с помощью SELECT. В этом случае данные копируются из одной таблицы в другую. INSERT INTO ПоставщикиБетона ( Город, Заметки ) SELECT [соотношение между классом и марками бетона по прочности].класс, [соотношение между классом и марками бетона по прочности].марка FROM [соотношение между классом и марками бетона по прочности]; Обновление данных. Команда UPDATE применяется для одновременного содержимого изменений содержимого полей одной или нескольких записей. Основной вариант выражения позволяет обновить значения всех столбцов таблицы. UPDATE [соотношение между классом и марками бетона по прочности] SET [прочность, кг/см2] = 327, КодПоставщика = 5;
Аналогично с теорией:
«Использование языка SQL в запросах»
SQL – операторы обычно английские термины. Эти термины – ключевые слова. Каждый SQL – оператор состоит из одного или нескольких ключевых слов. Ключевое слово – зарезервированное слово, являющееся частью языка SQL.
Выборка данных. Чтобы при помощи оператора SELECT извлечь данные из таблицы нужно знать как минимум 2 вещи: 1) Что выбрать? 2) Откуда? Искомое имя таблицы указывается сразу после слова SELECT, а ключевое слово FROM указывает на имя таблицы из которой выбираются данные.
SELECT [Цена датчика], [Заказано датчиков] FROM ЗаказДатчиков;
SELECT переводится как выбрать, отобрать. Оператор предназначен для выборки информации из таблиц, возвращает все указанные строки таблицы без фильтрации и сортировки.
Сортировка данных. При отсутствии сортировки данные обычно выводятся в том порядке, в котором они находятся в таблице. Предложение ORDER BY используется для точной сортировки данных. В этом предложении указывается имя одного или нескольких столбцов, по которым сортируются результаты. Порядок сортировки можно задать и по относительному положению столбца (по номеру) в списке SELECT. 1) Сортировка по убыванию
SELECT [Описание], [Срок] FROM [Обслуживание датчиков] ORDER BY [Срок] DESC;
DESC – сортировка по убыванию, указывается поля каждого столбца, которого необходимо отсортировать.
2) Сортировка по возрастанию
SELECT [Описание], [Срок] FROM [Обслуживание датчиков] ORDER BY [Срок];
Обычно выполняется по умолчанию, но в некоторых случаях необходимо указывать специально.
Фильтрация данных. Предложение WHERE.
Предложение WHERE позволяет указать критерии поиска данных. Указывается сразу после названия таблицы.
SELECT [Организация-заказчик], [Заказано датчиков] FROM ЗаказДатчиков WHERE [Организация-заказчик]=" ФБУ ИК-17";
Если используются одновременно предложения ORDER BY и WHERE, то ORDER BY должно находится после WHERE.
SELECT [Ответственный за обслуживание датчика], [Важность] FROM [Обслуживание датчиков] WHERE [Ответственный за обслуживание датчика] BETWEEN " Тишин С.М." AND " Холопов В.А." ORDER BY [Важность];
Для оператора BETWEEN требуется 2 значения – начальное и конечное, которые разделяются ключевым словом AND, выбираются все значения из диапазона, включая начальное и конечное.
= - равенство < , > - неравенство ! = - неравенство < - меньше > - больше < = - меньше или равно BETWEEN – между двумя значениями IS NULL – ноль (не содержит несколько значений) ! < - не меньше
Расширенная фильтрация данных. Чтобы увеличить уровень контроля над фильтром можно использовать несколько предложений WHERE
SELECT [Заказано датчиков], [Организация-заказчик] FROM ЗаказДатчиков WHERE [Заказано датчиков]> 2 And [Организация-заказчик]=" ФБУ ИК-10";
AND – объединение, указывает СУБД возвращать только те строки, которые удовлетворяют всем перечисленными предложениям. Ключевое слово OR указывает СУБД выбрать только те строки, которые удовлетворяют хотя бы одному предложению. Если первое предложение выполнено, строка будет выведена независимо от второго предложения.
SELECT [Заказано датчиков], [Количество датчиков на складе] FROM ЗаказДатчиков WHERE [Заказано датчиков]=2 Or [Количество датчиков на складе]> 4;
Порядок отбора. Комбинируя операторы AND и OR можно создать сложные фильтры.
SELECT [Заказано датчиков], [Количество датчиков на складе] FROM ЗаказДатчиков WHERE ([Заказано датчиков]=2 Or [Заказано датчиков]> 4) And [Количество датчиков на складе]> 3;
При такой комбинации могут быть ошибки в выводе результатов, поскольку SQL выбирает сначала оператор ENO, а затем OR, поэтому необходимо использовать прямые скобки, так как они имеют больший приоритет.
Те же функции, что и OR выполняет ключевое слово IN. Однако при использовании IN облегчается чтение данных, предложение управляется порядком отбора за счет уменьшения количества операторов, повышается быстрота обработки, а также может содержаться еще одна инструкция SELECT. SELECT [Ответственный за обслуживание датчика], [Важность] FROM [Обслуживание датчиков] WHERE [Ответственный за обслуживание датчика] In (" Тишин С.М.", " Холопов В.А." );
Логический оператор NOT предложения WHERE отрицает се предложения, следующие за ним.
SELECT [Ответственный за обслуживание датчика], [Важность] FROM [Обслуживание датчиков] WHERE NOT [Ответственный за обслуживание датчика]=" Холопов В.А.";
Предложения оператора SELECT и последовательность их использования: SELECT – столбцы или предложения, которые должны быть возвращены. FROM – таблица для возвращения данных WHERE – фильтрация на уровне строк GROUP BY – определенные группы (для таблиц) HAVING – фильтрация на уровне групп
Создание групп. Предложение группы BY. Для подсчета числа строк, вычисления суммы и среднего значения, а также для получения наибольшего и наименьшего значения не прибегая к выборке всех данных используют предложение групп BY.
SELECT [Назначение датчика], COUNT(*) AS Общее FROM [Технические данные датчиков] GROUP BY [Назначение датчика];
SELECT выводит 2 столбца. Функция COUNT (*) подсчитывает все строки.
Использование предложения HAVING. Все типы выражений в предложении WHERE, могут использоваться в предложении HAVING. Разница состоит в том, что WHERE фильтрует строки, а HAVING группы.
SELECT [Назначение датчика], COUNT(*) AS Общее FROM [Технические данные датчиков] GROUP BY [Назначение датчика] HAVING COUNT(*)> =4;
HAVING фильтрует группы с помощью COUNT(*)> =2.
Совместное использование WHERE и HAVING. Предложение WHERE фильтрует до того, как данные будут сгруппированы, а HAVING фильтрует после того, как данные были разделены на группы. Таким образом строки, выброшенные по предложению WHERE не будут включены в группу.
SELECT [Назначение датчика], COUNT(*) AS Общее FROM [Технические данные датчиков] WHERE [Длина зоны обнаружения, м]=" 120" GROUP BY [Назначение датчика] HAVING COUNT(*)> =2;
Объединение таблиц. Реляционные базы данных предполагают наличие механизма объединения хранящихся в нескольких таблицах данных, число таблиц связанных между собой может быть от двух и более.
SELECT * FROM ЗаказДатчиков INNER JOIN [Технические данные датчиков] ON [ЗаказДатчиков].[Серийный номер датчика на складе]=[Технические данные датчиков].[Код датчика];
Конструкция INNER JOIN позволяет возвратить все записи, для которых выполняется условие равенства столбцов, объединение таблиц.
Популярное:
|
Последнее изменение этой страницы: 2016-08-24; Просмотров: 497; Нарушение авторского права страницы