Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* объединение по условию*/
- SELECT Worker.Worker_ID, Worker.Second_Name,Departament.Departament_Name
- FROM Worker
- INNER JOIN Departament ON (Worker.Departament_ID=Departament.Departament_ID)
- /*outer join позволяет выводить всю внешнюю таблицу с автозаполнением пустых полей*/
- SELECT Worker.Worker_ID, Worker.Second_Name,Departament.Departament_Name
- FROM Worker
- LEFT OUTER JOIN Departament ON (Worker.Departament_ID=Departament.Departament_ID)
- /* Декартово произв.*/
- SELECT * from Worker CROSS JOIN Payment
- /* Самосоединение позволяет в рамках запроса получить инфромацию о таблице+информацию
- о таблице с ней связанной иерархически*/
- SELECT Departament.Departament_ID, Departament.Departament_Name, Worker.Worker_ID
- FROM Departament
- LEFT OUTER JOIN Worker ON Worker.Departament_ID=Departament.Departament_ID
- /* Эксист задает тру, если возвращены строки, и фолс, если нет.*/
- SELECT Worker_ID
- FROM Worker
- WHERE EXISTS (
- Select First_Name from Worker where First_Name = 'Петр'
- )
- /* является аналогом конструкции ИЛИ, сокращающим запись*/
- SELECT * from Worker
- WHERE Second_Name IN('Иванов','Алексеев')
- /*перебирает все значения нужного столбца как аргумент сравнения, работает также как и сом*/
- SELECT * from Departament
- WHERE Departament_ID = ANY (SELECT Departament_ID from Worker)
- /*Принимает верное значение, если каждое значение в подзапросе удовлетворяет условию*/
- SELECT * from Worker
- WHERE Worker_ID>ALL
- (SELECT Departament_ID from Worker WHERE Departament_ID=3)
- /*Очевидненько*/
- SELECT * from Worker
- WHERE Worker_ID BETWEEN 2 AND 3
- /* Отображает значения, которые подходят под заданный шаблон*/
- SELECT * from Payment where Payment_Type LIKE '%нал%'
- /*Case является оператором условия*/
- SELECT DISTINCT Payment_Type,Payment_fees,
- CASE
- WHEN Payment_fees < 3.0 THEN'Все норм'
- ELSE 'Дороговато'
- END Vyvod
- FROM Payment
- /* Преобразует тип*/
- SELECT CAST(12.81 AS int)
- /* Позволяет форматироть данные при преобразовании, а при обратном - указывать формат*/
- SELECT CONVERT(char(25), CONVERT (datetime,'20030722'))
- /* Заменяет пустое указанным значением*/
- SELECT Payment_Type,ISNULL(Payment_fees,100) from Payment
- /* Возвращает нул, если аргументы равны, и первый аргумент, если нет*/
- SELECT NULLIF(Payment_fees,5) from Payment
- /*Возвращает первое значение из списка не NULL*/
- SELECT COALESCE(Payment_fees,Payment_ID) AS test from Payment
- SELECT CHOOSE(3,Worker_ID) from Worker
- /*Проверяет логическое выражение*/
- SELECT IIF(Worker_ID=Departament_ID, 'Совпадает', 'Неа') from Worker
- SELECT REPLACE (Payment_Type,'без','не') from Payment
- SELECT STUFF(Payment_Type,1,5,'a') from Payment
- SELECT SUBSTRING(Payment_Type,1,5) from Payment
- /* числовые данные в символьные*/
- SELECT STR(Payment_fees,1,1) from Payment
- SELECT UNICODE(Payment_fees) from Payment
- SELECT UPPER(Payment_Type) from Payment
- SELECT LOWER(Payment_Type) from Payment
- /* Вытаскивает указанную часть даты*/
- SELECT DATEPART(day,'25.11.12')
- SELECT DATEADD(day,7,CURRENT_TIMESTAMP)
- SELECT DATEDIFF(day,DATEADD(day,7,CURRENT_TIMESTAMP),CURRENT_TIMESTAMP)
- SELECT GETDATE()
- SELECT SYSDATETIMEOFFSET()
- SELECT MAX(Detail_ID),Name from Details GROUP BY Name HAVING Name LIKE '%16%'
- SELECT Worker.Worker_ID, Worker.Second_Name,Departament.Departament_Name
- FROM Worker
- FULL OUTER JOIN Departament ON (Worker.Departament_ID=Departament.Departament_ID)
- SELECT * FROM Worker CROSS APPLY Clients WHERE (Worker_ID=Client_ID)
- SELECT * FROM Worker CROSS JOIN Clients
- SELECT CHOOSE(1,'Test1','Test2') as Test
Add Comment
Please, Sign In to add comment