Проект «SnakeProject» Михаила КозловаРегистрация

Навигация
⇒SQL\T-SQL⇒

⇐CISCO
⇐Voice(Asterisk\Cisco)
⇐Microsoft
⇐Powershell
⇐Python
⇐FreeBSD and Nix
⇐1С
⇐Общая
⇐WEB Разработка
⇐ORACLE SQL \ JAVA

T-SQL: Join2 - 2я часть.sql


USE Sbase
--CREATE TABLE Course
--(
--    CourseID INT
--    ,Name NVARCHAR(50)
--    ,Duration INT
--    ,Price MONEY
--    ,BranchID INT
--)

--CREATE TABLE Branch
--(
--    BranchID INT
--    ,Name NVARCHAR(50)
--    ,TopBranchID INT
--)

--INSERT Sbase.dbo.Branch VALUES
--(1, 'Courses', NULL)
--,(2, 'DataBases', 1)
--,(3, 'AppDev', 1)
--,(4, 'SysAdm', 1)
--,(5, 'Users', 1)
--,(6, 'MS SQL Server 2008', 2)
--,(7, 'MySQL', 2)
--,(8, 'Oracle DB', 2)
--,(9, '1C', 3)
--,(10, 'Windows Server 2008', 4)
--,(11, 'MS Excel', 5)

--SELECT * FROM Sbase.dbo.Branch


--INSERT Sbase.dbo.Course VALUES
--(1, 'T-SQL 2778', 24, 15000, 6)
--,(2, 'Maintain 6231', 40, 15000, 6)
--,(3, 'Maintain 6232', 40, 15000, 6)
--,(4, 'PL/SQL', 40, 15000, 8)
--,(5, 'MySQL Dev', 40, 16000, 7)
--,(6, N'Язык запросов 1С', 8, 5000, 9)
--,(7, 'English for IT', 24, 10000, NULL)
--,(8, N'Вышивка', 100, 10000, 1000)

--SELECT * FROM Sbase.dbo.Course

--Подвох в переменную заносится только одно значение
--DECLARE @BID INT

----1.
--SELECT @BID = BranchID
--FROM Sbase.dbo.Branch
--WHERE Name LIKE '%SQL%'

----2.
--SELECT Name
--FROM Sbase.dbo.Course
--WHERE BranchID = @BID

--Что, откуда, по какому условию
SELECT C.Name
FROM
    Branch AS B
        INNER JOIN
    Course AS C
ON B.BranchID = C.BranchID
WHERE B.Name LIKE '%SQL%'

SELECT C.Name AS [Course Name], B.Name AS [Branch Name]
FROM
    Course AS C
        LEFT OUTER JOIN    
    Branch AS B
ON B.BranchID = C.BranchID


SELECT C.Name AS [Course Name], B.Name AS [Branch Name]
FROM
    Course AS C
        RIGHT OUTER JOIN    
    Branch AS B
ON B.BranchID = C.BranchID

SELECT C.Name AS [Course Name], B.Name AS [Branch Name]
FROM
    Course AS C
        FULL OUTER JOIN    
    Branch AS B
ON B.BranchID = C.BranchID

--Создает таблицу и вносит в нее данные запроса
SELECT C1.*
INTO Sbase.dbo.TestCross
FROM
    Course AS C1
        CROSS JOIN    
    Course AS C2


DECLARE @NODE INT = 1
SELECT B1.BranchID, B1.Name
FROM
    Branch AS B1
        INNER JOIN
    Branch AS B2
ON B1.TopBranchID = B2.BranchID
WHERE B2.BranchID = @NODE

Видео на YouTube: http://www.youtube.com/watch?v=54tLfod8OQU


Комментарии пользователей

Эту новость ещё не комментировалиНаписать комментарий
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!

© Snakeproject.ru создан в 2013 году. При копировании материала с сайта - оставьте ссылку.


Яндекс.Метрика

Goon Каталог сайтов Рейтинг@Mail.ru