SQLUSA.com
SQL SERVER 2008 GRAND SLAM
FREE TRIAL  CLICK HERE TO ORDER  SEARCH
SQL JOBS SQL Server Training Scripts JOB BANK
  SQL Server 2008 Training Scripts  
  SQL Server 2005 Training Scripts  
News SQL Server Articles SQL Format

How to use SQL self-join?

Execute the following SQL Server T-SQL script in Query Editor to demonstrate the use of self-join on the ProductVendor table to find products with multiple vendors:

USE AdventureWorks;

GO

SELECT DISTINCT

      ProductName=p.Name,

      ProductNumber,

      Vendor=v.Name

FROM Purchasing.ProductVendor pv1

-- This is a self-join

INNER JOIN Purchasing.ProductVendor pv2

      ON pv1.ProductID = pv2.ProductID

      AND pv1.VendorID != pv2.VendorID

INNER JOIN Production.Product p

      ON pv1.ProductID = p.ProductID

INNER JOIN Purchasing.Vendor v

      ON pv1.VendorID = v.VendorID

ORDER BY

      ProductName,

      Vendor

GO   

/*

ProductName       ProductNumber     Vendor

Chainring         CR-7833           Beaumont Bikes

Chainring         CR-7833           Bike Satellite Inc.

Chainring         CR-7833           Training Systems

Chainring Bolts   CB-2903           Beaumont Bikes

Chainring Bolts   CB-2903           Bike Satellite Inc.

Chainring Bolts   CB-2903           Training Systems

Chainring Nut     CN-6137           Beaumont Bikes

Chainring Nut     CN-6137           Bike Satellite Inc.

.....

*/

 

Order SQL 2008 GRAND SLAM Today!
SQLUSA.com Home Page
SQL Server Training at www.sqlusa.com.
SQL Server 2008 Video Training at www.sqlusa.com.
SQL Server 2005 Training Videos at www.sqlusa.com.
Microsoft SQL Server 2000 Training Videos at www.sqlusa.com.

FREE SQL & Business Intelligence / OLAP Short Videos on YOUTUBE.com

Microsoft Community Contributor 2011
Invest in Your SUCCESS!

Search SQLUSA FREE SQL Server Articles & FREE T-SQL Scripts


Copyright 2005-2011, SMI Corp. All Rights Reserved.

SQL Server 2012 is a program product of Microsoft Corporation.
SQL Server 2008 is a program product of Microsoft Corporation.
SQL Server 2005 is a program product of Microsoft Corporation.
SQL Server 2000 is a program product of Microsoft Corporation.