| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > СУБД, общие вопросы > Короткий справочник по SQL, - самое необходимое |
| Автор: Pakshin A. S. 1.11.2004, 21:12 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Вот эти три странички очень мне помогли, когда я их распечатал и повесил на стенку. Для начинающих, конечно, но и для освежения памяти сойдёт. Кому надо, можете в Delphist's FAQ взять цветную версию. http://forum.vingrad.ru/index.php?act=ST&f=2&t=15409 Вывод нужных полей
Хотим вывести только имя, фамилию и оклад служащих Вывод всех полей из таблицы
Задание псевдонима таблице
Таблице employee в качестве псевдонима задано emp Выводим всех служащих с окладом свыше 35000 Исключение дубликатов
Постановка условия
Выводим поставщиков из Канады Использование логические операторов
Когда используем оператор AND должны удовлетворяться оба условия
Хотим видеть только тех животных, которые обитают в Южной Америке или Новом Орлеане Когда используем оператор OR должно удовлетворяться хотя бы одно условие
Выводим животных, обитающих в Южной Америке с весом не менее 7 кг Когда используем оператор AND NOT должно удовлетворяться первое условие и не должно - второе
Выводим животных, с весом менее 5 кг или более 10 кг Когда используем оператор OR NOT должно либо удовлетворяться первое условие, либо не должно - второе Упорядочивание записей по возрастанию/убыванию/по номеру столбца
Выводим животных в порядке увеличения веса: сначала самые лёгкие, в конце самые тяжелые
...наоборот - по убыванию
Упорядочить по третьему столбцу (отсчёт начинается с 1 ) Объединение нескольких запросов
Максимальное/минимальное значение поля
Выводим максимальный оклад из таблицы служащих
Выводим минимальный оклад из таблицы служащих Сумма всех значений/среднее значение
Так можем узнать сколько получают служащие некой фирмы вместе взятые
Так можем узнать среднестатистический оклад Количество записей в таблице/в поле
Находим количество записей в таблице - в данном случае количество служащих
Where occupation='Programmer' Посчитали сколько человек увлекаются программированием Группировка записей
С помощью конструкции "group by" можем узнать какая страна занимает самую большую площадь для каждого континента Конструкция IN
Выводим покупателей из США, Канады и Колумбии
Выводим всех покупателей за исключением тех, кто проживает в США, Канаде Вывод пустых/непустых значений
Выводит те записи, где введено значение в поле State Вывод значений приблизительно соответствующих нужным
Выводим только тех служащих, у которых фамилия начинается на букву 'L'. Знак '%' - означает любые символы
Например, мы не помним: как правильно пишется 'Nelson' или 'Nelsan', тогда нужно будет воспользоваться знаком подчёркивания, который означает любой символ Диапазон значений
Можем вывести только тех, кто получает от 25000 до 50000 включительно ANY, SOME, ALL
или
или
Вывести тех клиентов, которые моложе всех из 'Los Altos' EXISTS
Выводим заказы покупателей из города 'Largo' если вообще есть покупатели с этого города Использование параметров
Если мы хотим дать возможность пользователю самому указывать фамилию нужного ему клиента. мы вместо значения для поля фамилия указываем параметр. Параметры указываются после двоеточия. И получить доступ к ним можно по индексу из свойства Params компонента Query. Индексация начинается с нуля. Затем, например, по нажатию на кнопке напишем код:
Вывод дополнительного текста[использование выражений]
Если зарплата указана не в долларах, а какой-то другой валюте, курс которой равен 1 к 100, мы можем вывести данные в $, используя вышеуказанное выражение Использование нескольких таблиц
Вложенные подзапросы
Мы научились выводить максимальное значение, например, можем узнать максимальный оклад у служащих, но куда полезнее было бы узнать кто тот счастливчик. Именно здесь используется механизм вложенных подзапросов Взято с www.delphiworld.narod.ru |