Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
Вывод нужных полей |
SELECT LastName, FirstName, Salary FROM employee [Хотим вывести только имя, фамилию и оклад служащих] |
Вывод всех полей из таблицы |
SELECT * FROM employee [ * обозначает все поля] |
Задание псевдонима таблице |
SELECT * FROM employee emp where emp.salary>35000 [Таблице employee в качестве псевдонима задано emp Выводим всех служащих с окладом свыше 35000] |
Исключение дубликатов |
SELECT DISTINCT Country FROM vendors [Хотим узнать из каких стран поставляют продукцию] |
Постановка условия |
SELECT * FROM vendors Where Country='Canada' [Выводим поставщиков из Канады] |
Использование логические операторов |
SELECT * FROM vendors Where Country='U.S.A.' and Preferred='True' [Выводим только предпочитаемых поставщиков из США. Когда используем оператор AND должны удовлетворяться оба условия]
SELECT * FROM animals Where AREA='South America' or AREA='New Orleans' [Хотим видеть только тех животных, которые обитают в Южной Америке или Новом Орлеане Когда используем оператор OR должно удовлетворяться хотя бы одно условие]
SELECT * FROM animals Where AREA='South America' and not Weight<7 [Выводим животных, обитающих в Южной Америке с весом не менее 7 кг Когда используем оператор AND NOT должно удовлетворяться первое условие и не должно - второе]
SELECT * FROM animals Where Weight<5 or not Weight<10 [Выводим животных, с весом менее 5 кг или более 10 кг Когда используем оператор OR NOT должно либо удовлетворяться первое условие, либо не должно - второе] |
Упорядочивание записей по возрастанию/убыванию/по номеру столбца |
SELECT * FROM animals order by Weight [Выводим животных в порядке увеличения веса: сначала самые лёгкие, в конце самые тяжелые]
SELECT * FROM animals order by Weight desc [...наоборот - по убыванию]
SELECT * FROM animals order by 3 [Упорядочить по третьему столбцу (отсчёт начинается с 1 )] |
Объединение нескольких запросов |
SELECT * FROM animals
Where Area='South America'
UNION [Выводим тех животных, которые обитают в Южной Америке, а так же тех, которые обитают в Новом Орлеане Оператором UNION можем объединять несколько запросов] |
Максимальное/минимальное значение поля |
SELECT MAX(Salary) FROM employee [Выводим максимальный оклад из таблицы служащих]
SELECT MIN(Salary) FROM employee [Выводим минимальный оклад из таблицы служащих] |
Сумма всех значений/среднее значение |
SELECT SUM(Salary) FROM employee [Так можем узнать сколько получают служащие некой фирмы вместе взятые]
SELECT AVG(Salary) FROM employee [Так можем узнать среднестатистический оклад] |
Количество записей в таблице/в поле |
SELECT COUNT(*) FROM employee [Находим количество записей в таблице - в данном случае количество служащих]
SELECT COUNT(*) FROM clients Where occupation='Programmer' [Посчитали сколько человек увлекаются программированием] |
Группировка записей |
SELECT Continent, MAX(Area) FROM country group by Continent [С помощью конструкции "group by" можем узнать какая страна занимает самую большую площадь для каждого континента] |
Конструкция IN |
select * from Customer Where Country IN ('US','Canada','Columbia') [Выводим покупателей из США, Канады и Колумбии]
select * from Customer Where Country NOT IN ('US','Canada') [Выводим всех покупателей за исключением тех, кто проживает в США, Канаде] |
Вывод пустых/непустых значений |
select * from Customer Where State is NULL [Выводит те записи, где не введено значение в поле State]
select * from Customer Where State is NOT NULL [Выводит те записи, где введено значение в поле State] |
Вывод значений приблизительно соответствующих нужным |
select * from employee Where LastName like 'L%' [Выводим только тех служащих, у которых фамилия начинается на букву 'L'. Знак '%' - означает любые символы]
select * from employee Where LastName like 'Nels_n' [Например, мы не помним: как правильно пишется 'Nelson' или 'Nelsan', тогда нужно будет воспользоваться знаком подчёркивания, который означает любой символ] |
Диапазон значений |
select * from employee Where Salary BETWEEN 25000 AND 50000 [Можем вывести только тех, кто получает от 25000 до 50000 включительно] |
ANY, SOME, ALL |
SELECT * FROM orders.db where custno= ANY (select custno from customer.db where city = 'Largo'); или SELECT * FROM orders.db where custno= SOME (select custno from customer.db where city = 'Largo'); или SELECT * FROM orders.db where custno IN (select custno from customer.db where city = 'Largo'); [Выводим заказы покупателей из города 'Largo']
SELECT * FROM clients where birth_date>All(select birth_date from clients where city='Los Altos') [Вывести тех клиентов, которые моложе всех из 'Los Altos'] |
EXISTS |
SELECT * FROM orders.db where custno= ANY (select custno from customer where city = 'Largo') and Exists(SELECT * FROM customer WHERE City='Largo') [Выводим заказы покупателей из города 'Largo' если вообще есть покупатели с этого города] |
Использование параметров |
SELECT * FROM clients where Last_Name=:LastNameParam [Если мы хотим дать возможность пользователю самому указывать фамилию нужного ему клиента. мы вместо значения для поля фамилия указываем параметр. Параметры указываются после двоеточия. И получить доступ к ним можно по индексу из свойства Params компонента Query. Индексация начинается с нуля. Затем, например, по нажатию на кнопке напишем код: Query1.Active:=false; Query1.Params[0].AsString:=Edit1.Text; Query1.Active:=true; ] |
Вывод дополнительного текста[использование выражений] |
SELECT LastName, Salary/100, '$' FROM employee [Если зарплата указана не в долларах, а какой-то другой валюте, курс которой равен 1 к 100, мы можем вывести данные в $, используя вышеуказанное выражение] |
Использование нескольких таблиц |
SELECT o.orderno,o.AmountPaid, c.Company FROM orders o, customer c where o.custno=c.custno and c.city='Largo' [Выводим номер и сумму заказа из таблицы заказов и компанию сделавшую заказ из таблицы покупателей] |
Вложенные подзапросы |
SELECT * FROM employee where Salary=(select MAX(Salary) from employee) [Мы научились выводить максимальное значение, например, можем узнать максимальный оклад у служащих, но куда полезнее было бы узнать кто тот счастливчик. Именно здесь используется механизм вложенных подзапросов] |