Aracılığıyla paylaş


Örnekler (Transact-SQL) SELECT

Bu konu, kullanım örnekleri sağlar SELECT ekstresi.

C.SELECT, satır ve sütun almak için kullanma

Aşağıdaki örnek, üç kod örneklerini göstermektedir.Bu ilk kod örneği (yok bir WHERE yan tümce belirtilir), tüm satırları ve tüm sütunları verir (kullanarak *) gelen Product ' de tablo AdventureWorks Veritabanı.

Bu örnek (yok bir WHERE yan tümce belirtilir), tüm satırları ve sütunları (yalnızca bir kısmını verir...Name, ProductNumber, ListPrice) gelen Product ' de tablo AdventureWorks Veritabanı. Ayrıca, bir sütun başlığı eklenir.

Bu örnek için yalnızca satırları döndürür. Product bir ürün satırı olan R ve diğer bir deyişle üretmek için gün küçüktür 4.

b.SELECT kullanarak, sütun başlıklarını ve hesaplamalar

Aşağıdaki örnekler, alınan tüm satırların dönmek Product TABLO. Ilk örnek, toplam satışların ve her ürün iskontolarını döndürür.Ikinci örnekte, her ürün için toplam geliri hesaplanır.

Her bir ürünün her bir satış siparişi geliri hesaplar sorgudur.

c.Ile SELECT DISTINCT kullanma

Aşağıdaki örnek kullanır. DISTINCT Yinelenen başlık alınmasını önlemek için .

d.SELECT INTO ile tablo oluşturma

Aşağıdaki örnekte ilk adlı geçici tablo oluşturur. #Bicycles içinde tempdb. Bu tablo kullanmak için , her zaman için kesin adla gösterilir bakın.Bu, numara işareti (içerir#).

Here is the result set.

name                          
------------------------------
#Bicycles_____________________

Bu ikinci örnek, kalıcı bir tablo oluşturur. NewProducts.

Here is the result set.

name                          
------------------------------
NewProducts                   
(1 row(s) affected)

e.Ilişkili alt sorgusu kullanma

Aşağıdaki örnek semantically eşdeğerdir sorguları gösterir ve kullanma arasındaki farkı gösterir EXISTS anahtar sözcük ve IN anahtar sözcük. Her bir alan geçerli bir alt sorgu örnekler örnek ürün modeline bir uzun sleeve amblem jersey olduğu her ürün adının ve ProductModelID arasındaki sayıları eşleşen Product ve ProductModel Tablolar.

Aşağıdaki örnek kullanır. IN ilişkili veya yinelenen, sorguda. Bu dış sorgusu değerlerine bağlı bir sorgudur.Sorguyu art arda gerçekleştirildiğinde, her satır için saat, dış bir sorgu tarafından seçilebilir.Bu sorgu, her çalışan için hangi ad ve soyad bir kopyasını alır, Primin SalesPerson Tablo 5000.00 ve, çalışan kimlik numaraları, eşleşen Employee ve SalesPerson Tablolar.

Bu deyim bir önceki sorguda dış alt sorgu bağımsız olarak değerlendirilemez.Bunun için bir değer gerekir Employee.EmployeeID, ancak bu değer, olarak değiştirir SQL Server Database Engine Farklı satırlardaki inceler. Employee.

bağıntılı alt sorgu da kullanılabilir HAVING Dış bir sorgu yan tümce. Bu örnekte, liste fiyatını en fazla iki kez birden fazla modeli için ortalama olduğu Ürün modelleri bulur.

Bu örnekte, iki ilişkili alt sorgusu belirli bir ürünün satıldığı çalışanların adlarını bulmak için kullanılır.

f.GROUP BY'ı kullanma

Aşağıdaki örnek, her bir satış siparişinin toplam veritabanında bulur.

Nedeniyle GROUP BY yan tümce, her satış siparişi için tüm satış toplamı içeren yalnızca bir satır döndürülür.

g.GROUP BY ile birden çok Grup kullanma

Aşağıdaki örnek KIMLIğI, ortalama fiyat ve toplam satışların yıl, tarih, ürün KIMLIĞINE göre gruplandırılmış ve özel teklif bulur.

h.GROUP BY ve WHERE kullanma

Aşağıdaki örnekte, yalnızca büyük listesi fiyatlarla satırları aldıktan sonra gruplara sonuçlar koyar $1000.

İ.GROUP BY ile ifade kullanma

Aşağıdaki örnek grupları bir ifade tarafından.Ifade, toplamak işlevleri içermemektedir, ifade gruplandırabilirsiniz.

j.GROUP BY ile ORDER BY kullanma

Aşağıdaki örnek, her ürün türü ortalama fiyatını bulur ve ortalama fiyatı ile sonuçlar siparişleri.

k.HAVING kullanarak yan tümce

Programları izleyen ilk örnekte bir HAVING yan tümce içeren bir toplamak işlev. Bu satır grupları SalesOrderDetail Ürün KIMLIĞINE göre tablosu ve ürünler, ortalama sipariş miktarları beş veya daha az ortadan kaldırır. Ikinci örnekte gösterildiği bir HAVING toplamak işlevleri olmadan yan tümce.

Bu sorguyu kullanan LIKE yan tümcesinde HAVING yan tümce.

USE AdventureWorks ;
GO
SELECT SalesOrderID, CarrierTrackingNumber 
FROM Sales.SalesOrderDetail
GROUP BY SalesOrderID, CarrierTrackingNumber
HAVING CarrierTrackingNumber LIKE '4BD%'
ORDER BY SalesOrderID ;
GO

l.HAVING ve GROUP BY'ı kullanma

Aşağıdaki örnek, kullanarak gösterir. GROUP BY, HAVING, WHERE, ve ORDER BY bir yan tümcesi SELECT deyim. Bu gruplar üretir ve Özet değerleri ancak fiyatlarını ürünleriyle üzerinde 25 TL kaldırıldıktan sonra bunu yapar ve ortalama sipariş miktarları altında 5.Sonuçlarına göre düzenler... ProductID.

m.HAVING kullanarak TOPLAM ve ortalama

Aşağıdaki örnek grupları SalesOrderDetail Ürün KIMLIĞI ile tablo ve bu gruplara yalnızca toplam alma siparişlerinin ürünlerden birini içeren birden fazla $1000000.00 ve, ortalama sipariş miktarları küçüktür 3.

Toplam satışların büyük olan ürünleri görmek için $2000000.00, bu sorguyu kullanın:

Her ürün için hesaplamaları katılan en az bir bin beş yüz öğelerin bulunduğundan emin olun istiyorsanız kullanın. HAVING COUNT(*) > 1500 toplamları için az veren ürünler ortadan kaldırmak için 1500 Maddeler satıldığında. Sorguyu aşağıdaki gibi görünür:

n.COMPUTE BY'ı kullanarak, Grup toplamlarını hesaplama

Aşağıdaki örnekte iki kod örnekleri, COMPUTE BY kullanımını göstermek için kullanır.Ýlk örnek kod bir kullanır. COMPUTE BY bir toplamak işlev ile ikinci bir kod örneği kullanır COMPUTE BY öğe ve iki toplamak işlevleri.

Bu sorgu, ürünlerinin fiyatlarını siparişlerini toplamını hesaplar küçüktür $5.00, her ürün türü için.

Bu sorgu ürün türü ve birim fiyatlar altında olan ürünler için toplam sipariş alır. $5.00. The COMPUTE BY yan tümce uses two different toplamak functions.

o.Genel bir değer, COMPUTE BY olmadan kullanarak hesaplama

Anahtar sözcüğü COMPUTE BY genel toplamlar, genel sayımları vb. oluşturmak için kullanılır.

Aşağıdaki örnek fiyatların genel toplamın bulur ve ürünleri les ' her tür için doğru ilerler. $2.00.

COMPUTE BY kullanabilirsiniz ve BY aynı sorguda COMPUTE.Aşağıdaki sorgu sipariş miktarları ve satır toplamları ürün türüne göre bulur ve sonra da sipariş miktarları genel toplamı ve satır toplamları hesaplar.

p.Hesaplama, toplamların tüm satırda hesaplanan

Aşağıdaki örnek, seçim listesinde yalnızca üç sütunu gösterir ve tüm sipariş miktarları ve sonuçlar sonunda tüm satır toplamları dayalı olarak Toplamlar'ı verir.

S.Birden fazla COMPUTE yan tümcesinin kullanılması

Aşağıdaki örnek, fiyatları, birim fiyatı küçüktür $ ürün KIMLIĞI ve miktar yanı sıra, ürün KIMLIĞI ile tüm siparişlerin $ 5'ten daha az düzenlenmiş fiyatlarını toplamı düzenlenmiş 5'tir, tüm siparişlerin toplamı bulur.COMPUTE BY birden çok yan tümce ekleyerek, aynı deyiminde farklı toplamak işlevlerini kullanabilirsiniz.

r.GROUP BY COMPUTE ile karşılaştırma

Kullandığı izleyen ilk örnekte COMPUTE Tüm toplamı, bir ürünün birim fiyatını siparişleri hesaplamak için yan tümce ise daha az $5.00, ürün türüne göre. Ikinci örnek, yalnızca aynı özet bilgileri oluşturur GROUP BY.

Ikinci sorguyu kullanan budur. GROUP BY.

s.SELECT, GROUP BY, COMPUTE ve ORDER BY yan tümceleri ile kullanma

Aşağıdaki örnek, yalnızca birim fiyatı küçüktür $ 5; sonra ürün ve genel toplam satırı toplam hesaplar emirlerini verir.Tüm hesaplanan, sütunlar, seçim listesi içinde görünür.

t.INDIS iyileştirici ipucu kullanma

Aşağıdaki örnek kullanmanın iki yolu gösterir INDEX en iyi duruma getiricisi ipucu. Ilk örnek, kümelenmemiş bir dizini tablodan satır almak için kullanılacak en iyi duruma getiricisi zorlaması nasıl gösterir ve ikinci örnek, bir dizini 0'ı kullanarak bir tablo taraması zorlar.

u.OPTION ve GROUP ipuçları'nı kullanma

Aşağıdaki örnekte gösterildiği nasıl OPTION (GROUP) yan tümce ile kullanılan bir GROUP BY yan tümce.

v.UNION sorgusu ipucu kullanma

Aşağıdaki örnek MERGE UNION Sorgu ipucu.

w.Basit bir UNION kullanma

Aşağıdaki örnekte, sonuç küme içeriğini içeren ProductModelID ve Name Her iki sütun ProductModel ve Gloves Tablolar.

x.SELECT INTO, UNION ile kullanma

Aşağıdaki örnekte, INTO ikinci yan tümce SELECT deyim, tablo adı belirtir. ProductResults birleşim küme sütun sonuç kümesi tutar ProductModel ve Gloves Tablolar. Dikkat Gloves Tablo, ilk oluşturulur SELECT deyim.

y.UNION iki SELECT deyimleri, ORDER BY ile kullanma

UNION yan tümcesiyle birlikte kullanılan belirli parametreleri sırası önemlidir.Aşağıdaki örnek, yanlış ve doğru kullanımını gösterir. UNION iki SELECT bir sütun çıkışı yeniden adlandırılması olan ifadeler.

z.Üç SELECT deyimlerinin UNION ALL etkilerini ve parantez göstermek için kullanma

Aşağıdaki örnekleri kullanın UNION tümü aynı 5 veri satırlarının sahip üç tablo sonuçlarını birleştirmek için . Ýlk örnek kullanır. UNION ALL Yinelenmiş göstermek için kaydeder ve tüm 15 satır döndürür. Ikinci örnek kullanır. UNION içermeyen ALL Yinelenen satırları arasında üç birleştirilmiş sonuçlar ortadan kaldırmak için SELECT ifadeler ve 5 döndürür satır.

Üçüncü örnek kullanır. ALL ilk ile UNION ayraç içine alýn, ikinci UNION kullanmıyor ALL. Ikinci UNION parantez içinde olduğundan ve 5 için Satırlar'ı verir çünkü ilk önce işleneceği ALL seçenek kullanılmaz ve bu çoğaltmaların kaldırılır. 5 Bu satırlar, ilk sonuçlar birleştirilir SELECT kullanarak UNION ALL Anahtar Sözcükler. Bu iki 5 Satır kümeleri arasında çoğaltmaları kaldırmaz.Nihai sonuç, 10 satır vardır.