Sorgu sonuçlarını keskinleştirmek için SQL deyimlerini düzenleme
Applies ToMicrosoft 365 için Access Access 2024 Access 2021 Access 2019 Access 2016

Sorgularınız yeterince sıkı çalışmıyorsa, bazı temel SQL deyimleri eklemek sonuçlarınıza odaklanmanıza yardımcı olabilir. Şimdi istediğiniz sonuçları elde etmek için düzenleyebileceğiniz birkaç tür SQL deyimine ve yan tümcelere veya bölümlere göz atalım.

Not:  Bu makale Access web uygulamaları (Access ile tasarladığınız ve çevrimiçi yayımladığınız veritabanları) için geçerli değildir.

Bu makalede

Select deyimi oluşturma

SQL select deyiminin iki ile üç yan tümcesi vardır. SELECT yan tümcesi veritabanına verileri nerede arayacağı söyler ve belirli bir sonuç döndürmesini ister.

Not:  SELECT deyimleri her zaman noktalı virgülle (son yan tümcenin sonunda ;) veya SQL deyiminin sonunda tek başına bir satırda) biter.

Aşağıdaki select deyimi Access'ten, Özellikle Şehir sütununda "Seattle"ı bulduğu Kişiler tablosundan E-posta Adresi ve Şirket sütunlarından bilgi almasını ister.

Bir SELECT deyimi gösteren SQL nesne sekmesi

Yukarıdaki sorgunun SELECT, FROM ve WHERE üç yan tümcesi vardır.

1. SELECT yan tümcesi, kullanmak istediğiniz verileri içeren sütunları listeler ve bir işleci (SELECT) ve ardından iki tanımlayıcı (E-posta Adresi ve Şirket) vardır. Tanımlayıcıda boşluk veya özel karakterler ("E-posta Adresi" gibi) varsa, tanımlayıcıyı köşeli ayraç içine alın.

2. FROM yan tümcesi kaynak tabloyu tanımlar. Bu örnekte, bir işleci (FROM) ve ardından bir tanımlayıcı (Kişiler) vardır.

3. WHERE yan tümcesi isteğe bağlı bir yan tümcedir. Örnekte bir işleç (WHERE) ve ardından bir ifade (City="Seattle") vardır.

Seçme sorguları hakkında daha fazla bilgi için bkz . Basit bir seçme sorgusu oluşturma.

Yaygın SQL yan tümcelerinin listesi aşağıdadır:

SQL yan tümcesi

Yaptığı işlem

Gerekli mi ?

SELECT

İlgilenen verileri içeren alanları listeler.

Evet

FROM

SELECT yan tümcesinde listelenen alanları içeren tabloları listeler.

Evet

WHERE

Sonuçlara dahil edilecek her kayıt tarafından karşılanması gereken alan ölçütlerini belirtir.

Hayır

ORDER BY

Sonuçların nasıl sıralanacağını belirtir.

Hayır

GROUP BY

Toplama işlevleri içeren bir SQL deyiminde, SELECT yan tümcesinde özetlenmeyen alanları listeler.

Yalnızca bu tür alanlar varsa

HAVING

Toplama işlevleri içeren bir SQL deyiminde, SELECT deyiminde özetlenen alanlara uygulanan koşulları belirtir.

Hayır

Her SQL yan tümcesi terimlerden oluşur. Bazı yaygın SQL terimlerinin listesi aşağıdadır.

SQL terimi

Tanım

Örnek

Tanımlayıcı

Sütun adı gibi bir veritabanı nesnesini tanımlamak için kullandığınız ad.

[E-posta Adresi] ve Şirket

işleç

Bir eylemi temsil eden veya eylemi değiştiren anahtar sözcük.

AS

sabit

Sayı veya NULL gibi değişmeyen bir değer.

42

ifade

Tanımlayıcıların, işleçlerin, sabitlerin ve işlevlerin tek bir değer olarak değerlendirilen birleşimi.

>= Ürünler. [Birim Fiyat]

Sayfanın Başı

SELECT yan tümcesini özelleştirme

Özelleştirme

Örnek

Yalnızca ayrı değerleri görmek için.

SELECT yan tümcenizde DISTINCT anahtar sözcüğünü kullanın.

Örneğin, müşterileriniz birkaç farklı şubeden geliyorsa ve bazıları aynı telefon numarasına sahipse ve yalnızca bir kez listelenen bir telefon numarası görmek istiyorsanız, SELECT yan tümceniz şöyle olacaktır:

SELECT DISTINCT [txtCustomerPhone] 

Okunabilirliği artırmak için veri sayfası görünümünde tanımlayıcının görüntülenme şeklini değiştirmek için.

SELECT yan tümcenizde alan diğer adıyla AS işlecini (Eylemi temsil eden veya eylemi değiştiren anahtar sözcük) kullanın. Alan diğer adı, sonuçların daha kolay okunmasını sağlamak için alana atadığınız addır.

SELECT [txtCustPhone] AS [Customer Phone]

FROM yan tümcesini özelleştirme

Özelleştirme

Örnek

Tablo diğer adını veya select deyimindeki bir tabloya atadığınız farklı bir adı kullanabilirsiniz. Tablo adı uzunsa, özellikle farklı tablolardan aynı ada sahip birden çok alanınız varsa, tablo diğer adı yararlı olur.

Her ikisi de id adlı iki alandan veri seçmek için bunlardan biri tblCustomer tablosundan, diğeri de tblOrder tablosundan gelir:

SELECT [tblCustomer].[ID],        [tblOrder].[ID]

FROM yan tümcesinde tablo diğer adlarını tanımlamak için AS işlecini kullanın:

FROM [tblCustomer] AS [C],      [tblOrder] AS [O] 

Ardından select yan tümcenizde aşağıdaki gibi bu tablo diğer adlarını kullanabilirsiniz:

SELECT [C].[ID],        [O].[ID]

İki veri kaynağındaki kayıt çiftlerini tek bir sonuçta birleştirmek veya ilişkili tabloda karşılık gelen bir kayıt yoksa iki tablodan kayıtların dahil edilip edilmeyeceğini belirtmek için birleştirmeleri kullanın.

Tabloları birleştirerek sorgunun tablolardaki öğeleri birleştirmesini ve diğer tabloda karşılık gelen kayıt olmadığında öğeleri dışlamasını sağlar

FROM yan tümcesi şöyle görünebilir:

FROM [tblCustomer] INNER JOIN [tblOrder]ON [tblCustomer].[CustomerID]=[tblOrder].[CustomerID] 

Birleştirmeleri kullanma hakkında

İç ve dış birleşim olmak üzere iki tür birleşim vardır. İç birleşimler sorgularda daha yaygındır. İç birleşim içeren bir sorgu çalıştırdığınızda, sonuç yalnızca birleştirilen tabloların her ikisinde de ortak bir değerin bulunduğu öğeleri gösterir.

Dış birleşimler, ortak değer bulunmayan verilerin eklenip eklenmeyeceğini belirtir. Dış birleşimler yönseldir; yani birleşimde belirtilen ilk tablodaki tüm kayıtların (sol birleşim olarak adlandırılır) dahil edilip edilmeyeceğini veya ikinci tablodaki tüm kayıtların birleştirmeye dahil edilip edilmeyeceğini belirtebilirsiniz (sağ birleştirme olarak adlandırılır). Dış birleşim aşağıdaki SQL söz dizimine sahiptir:

FROM table1 [ LEFT | RIGHT ] JOIN table2ON table1.field1 = table2.field2

Birleştirme tabloları ve sorguları'nda sorguda birleştirmeleri kullanma hakkında daha fazla bilgi edinin.

Sayfanın Başı

WHERE yan tümcesini özelleştirme

WHERE yan tümcesi, sorguda döndürülen öğe sayısını sınırlamaya yardımcı olan ölçütler içerir. Sorgu ölçütlerinin örneklerine ve nasıl çalıştıklarına bakın.

Temel WHERE yan tümcesini nasıl özelleştirebileceğinize bir örnek, sorgunun sonuçlarını sınırlamaktır; Bir müşterinin telefon numarasını bulmak istediğinizi ve yalnızca Soyadını Bagel olarak hatırlayabildiğinizi varsayalım. Bu örnekte soyadları bir Soyadı alanında depolandığından SQL söz dizimi şöyle olacaktır:

WHERE [LastName]='Bagel'

WHERE yan tümcesini, eşleşen verileri olan ancak farklı veri türlerine sahip sütunların veri kaynaklarını birleştirmek için de kullanın. Bu, farklı veri türlerine sahip alanlar arasında birleştirme oluşturamadığınız için kullanışlıdır. Like anahtar sözcüğüyle bir alanı diğer alan için ölçüt olarak kullanın. Örneğin, Bir Varlıklar tablosundaki ve Çalışanlar tablosundaki verileri kullanmak istiyorsanız, yalnızca Varlıklar tablosunun varlık türü alanındaki varlığın türü Çalışanlar tablosunun Miktar alanında 3 sayısı olduğunda WHERE yan tümceniz şöyle görünür:

WHERE field1 LIKE field2

Önemli:  WHERE yan tümcesinde toplama işleviyle kullanılan bir alan için ölçüt belirtemezsiniz. Bunun yerine, toplanan alanlara yönelik ölçütler belirtmek için HAVING yan tümcesini kullanırsınız.

Sayfanın Başı

UNION işleciyle özelleştirme

Benzer seçme sorgularından sonuçların birleşik bir görünümünü görmek istediğinizde UNION işlecini kullanın. Örneğin, veritabanınızda Ürünler tablosu ve Hizmetler tablosu varsa ve her ikisinin de üç alanı varsa: özel teklif veya ürün veya hizmet, fiyat, garanti veya garanti. Ürünler tablosunda garanti bilgileri ve Hizmetler tablosu garanti bilgilerini depolasa da temel bilgiler aynıdır. Birleşim sorgusunu kullanarak iki tablodaki üç alanı birleştirebilirsiniz:

SELECT name, price, warranty, exclusive_offerFROM ProductsUNION ALLSELECT name, price, guarantee, exclusive_offer FROM Services;

Sorguyu çalıştırdığınızda, karşılık gelen her alan kümesindeki veriler tek bir çıkış alanında birleştirilir. Sonuçlara yinelenen satırları eklemek için ALL işlecini kullanın.

Not:  Select deyimi, aynı sırada ve aynı veya uyumlu veri türleriyle aynı sayıda çıkış alanına sahip olmalıdır. Birleşim sorgusunun amaçları doğrultusunda Sayı ve Metin veri türleri uyumludur.

Birleşim sorguları hakkında daha fazla bilgi için bkz. Birden çok sorgudan birleştirilmiş bir sonucu görüntülemek için birleşim sorgusu kullanma.

Sayfanın Başı

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.