Bir alt sorgu ve JOIN deyimi ile bir SQL Server 2012 Sorgu oluşturma gözlerin ikinci çift gerekir?

oy
0

Bir okul atama kapsamında AdventureWorks 2012 veritabanını kullanarak bir SQL Server 2012 Sorgu kod çalışıyorum ve benim sorgu oluşturulan ama yeterince temiz ve düzgün yapılandırılmış ise ben emin değilim.

Bir alt sorgu kullanın ve bir araya deyimi Üyelik gerekiyor.

SalesTerritory masada adı 'Merkez' nerede Müşteri tablosundan MüşteriKimliği & bölge kimliği dön

Ben zor bir zaman bu sergiyi yaşıyorum çünkü ben sadece gözlerin ikinci çift gerekir, herhangi bir şekilde hile yardım isteyen değilim, ben programlamak zar zor duyuyorum ve bunun için biraz sevgi var.

İşte benim Sorgu şimdiye kadar geçerli:

SELECT Sales.Customer.CustomerID
       , Sales.Customer.TerritoryID,Sales.SalesTerritory.Name
FROM  Sales.Customer 
INNER JOIN Sales.SalesTerritory 
    ON Sales.Customer.TerritoryID = Sales.SalesTerritory.TerritoryID
WHERE (Sales.SalesTerritory.Name = N'central')
Oluştur 04/10/2016 saat 09:14
kullanıcı
Diğer dillerde...                            


2 cevaplar

oy
1

SELECT Sales.Customer.CustomerID, Sales.Customer.TerritoryID,    SalesTerritoryFiltered.Name
FROM   Sales.Customer 
INNER JOIN (SELECT *
            FROM Sales.SalesTerritory
            WHERE Sales.SalesTerritory.Name = N'central') SalesTerritoryFiltered
  ON Sales.Customer.TerritoryID  = SalesTerritoryFiltered.TerritoryID

Bu seferki bir iç filtrelenmiş sonuçlarını içeren ve alt sorgu katılmak vardır. Test edilmemiş ama çalışması gerekir.

Cevap 04/10/2016 saat 09:23
kaynak kullanıcı

oy
0

Değiştir WHEREile ANDbu yanı performansının artırılmasında yardımcı olabilir table.so katılma işlemi getirilirken sıranın sayısının azaltılmasında bu marka süzme daha verimli kriterler ve sonuçları!

SELECT Sales.Customer.CustomerID
      ,Sales.Customer.TerritoryID,Sales.SalesTerritory.Name
FROM  Sales.Customer 
INNER JOIN Sales.SalesTerritory 
ON Sales.Customer.TerritoryID = Sales.SalesTerritory.TerritoryID
AND Sales.SalesTerritory.Name = N'central'
Cevap 04/10/2016 saat 09:25
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more