Access SQL: temel kavramlar, sözcük dağarcığı ve söz dizimi

Access SQL: temel kavramlar, sözcük dağarcığı ve söz dizimi

Veritabanından veri almak istediğiniz zaman, Yapılandırılmış Sorgu Dili veya SQL kullanarak veri istersiniz. SQL, İngilizceye çok benzeyen ancak veritabanı programlarının anlıyoruz. Çalıştıracak her sorgu perde arkasında SQL kullanır.

SQL'in nasıl çalıştığını anlamak daha iyi sorgular oluşturmanıza yardımcı olabilir ve istediğiniz sonuçları döndür etmeyen bir sorguyu düzeltmeyi anlamanızı kolaylaştırır.

Bu, Access SQL ile ilgili bir dizi makaleden biridir. Bu makalede, verileri seçmek için SQL'in temel kullanımı açıklanmıştır ve sql söz dizimlerini göstermek için örnekler kullanılır.

Bu makalede

SQL nedir?

SQL, olgu kümeleriyle ve bunlar arasındaki ilişkilerle çalışmak için bir bilgisayar dilidir. Microsoft Office Access gibi ilişkisel veritabanı programları, verilerle çalışmak için SQL'i kullanır. Birçok bilgisayar dilinden farklı olarak, acemi biri için bile SQL'i okumak ve anlamak zor değildir. Birçok bilgisayar dili gibi SQL de ISO ve ANSI gibi standart gövdeleri tarafından tanınan uluslararası bir standarttır.

Sql'i kullanarak soruları yanıtlamanıza yardımcı olacak veri kümelerini açıklar. SQL'i kullanıyorken doğru söz dizimi kullan gerekir. Söz dizimi, bir dil öğelerinin doğru bir şekilde birleştirilmiş olduğu kurallar kümesidir. SQL söz dizimi İngilizce söz dizimine dayalıdır ve Visual Basic for Applications (VBA) söz dizimine göre birçok aynı öğeleri kullanır.

Örneğin, adı Mary olan kişilerin soyadı listesini alan basit bir SQL deyimi aşağıdakine benzeebilir:

SELECT Last_Name
FROM Contacts
WHERE First_Name = 'Mary';

Not: SQL yalnızca verileri değiştirmek için değil, tablolar gibi veritabanı nesnelerinin tasarımını oluşturmak ve değiştirmek için de kullanılır. Veritabanı nesnelerini oluşturmak ve değiştirmek için kullanılan SQL bölümü, veri tanımlama dili (DDL) olarak adlandırılan bölüm. Bu konu DDL'i kapsamıyor. Daha fazla bilgi için, veri tanımlama sorgusu kullanarak tablo veya dizin oluşturma veya değiştirme makalesine bakın.

SELECT deyimleri

SQL kullanarak bir veri kümelerini açıklamak için bir SELECT deyimi yazarsanız. SELECT deyimi, veritabanından almak istediğiniz bir veri kümesi tam açıklamasını içerir. Bunlar aşağıda belirtilmiştir:

  • Hangi tabloların verileri içerdiği.

  • Farklı kaynaklardan alınan verilerin nasıl ilişkili olduğunu.

  • Verileri hangi alanlar veya hesaplamalar üretecek?

  • Verilerin dahil etmek için eşleşmesi gereken ölçütler.

  • Sonuçların nasıl ve nasıl sıralanıp sıralan olmadığı.

SQL yan tümceleri

Tümce gibi, SQL deyiminin de yan tümceleri vardır. Her yan tümce, SQL deyimi için bir işlev gerçekleştirir. Select deyiminde bazı yan tümceler gereklidir. Aşağıdaki tabloda en yaygın SQL yan tümceleri listele almaktadır.

SQL yan tümcesi

Yaptığı işlem

Gerekli

SELECT

İlgi alanı verileri içeren alanları listeler.

Evet

FROM

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

Evet

WHERE

Sonuçlara dahil etmek için her kayıt tarafından karşılanmayacak alan ölçütlerini belirtir.

Hayır

ORDER BY

Sonuçların nasıl sırala ilgili olduğunu belirtir.

Hayır

GROUP BY

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

Yalnızca bu tür alanlar varsa

HAVING

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

Hayır

SQL terimleri

Her SQL yan tümcesi, konuşma bölümleriyle karşılaştırılabilir terimlerden oluşur. Aşağıdaki tabloda SQL terimleri türleri listele.

SQL terimi

Konuşmanın benzer bir parçası

Tanım

Örnek

tanımlayıcı

noun

Veritabanı nesnesini tanımlamak için (örneğin, alanın adı) kullanmak için kullanabileceğiniz ad.

Müşteriler. [Telefon Numarası]

işleç

fiil veya zarf

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

AS

sabit

noun

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

42

ifade

sıfat

Tek bir değer olarak değerlendirilen tanımlayıcılar, işleçler, sabitler ve işlevlerin birleşimi.

>= Ürünler. [Birim Fiyat]

Sayfanın Başı

Temel SQL yan tümceleri: SELECT, FROM ve WHERE

SQL deyimi genel formu alır:

SELECT field_1
FROM table_1
WHERE criterion_1
;

Notlar: 

  • Access, SQL deyiminde satır sonlarını yoksayar. Bununla birlikte, SQL deyimlerinizi kendiniz ve başkaları için okunabilirliği artırmaya yardımcı olması için her yan tümce için bir çizgi kullanmayı göz önünde bulundurabilirsiniz.

  • Her SELECT deyimi noktalı virgülle (iki nokta üst üste) ;). Noktalı virgül son yan tümcenin sonunda veya SQL deyiminin sonunda tek başına bir satırda görünebilir.

Access'te bir örnek

Aşağıda, Access'te basit bir seçme sorgusuna ilişkin SQL deyiminin nasıl göster göster gösterebilirsiniz:

Bir SELECT deyimi gösteren SQL nesne sekmesi

1. SELECT yan tümcesi

2. FROM yan tümcesi

3. WHERE yan tümcesi

Bu örnek SQL deyimi "Kişiler adlı tablodan, özellikle de Şehir alanı değerinin Seattle olduğu kayıtlar olmak üzere E-posta Adresi ve Şirket adlı alanlarda depolanan verileri seçin" ifadesini okur.

SQL sözdiziminin nasıl çalıştığını görmek için bir defada bir yan tümce örneğine bakalım.

SELECT yan tümcesi

SELECT [E-mail Address], Company

Bu, SELECT yan tümcesidir. Bir işleç (SELECT) ve ardından iki tanımlayıcıdan ([E-posta Adresi] ve Şirket) oluşur.

Tanımlayıcı boşluk veya özel karakter içeriyorsa (örneğin"E-posta Adresi"), köşeli ayraç içine alınmalıdır.

SELECT yan tümcesi, hangi tabloların alanları içerdiğini söylemesine gerek yok ve dahil edilecek veriler tarafından karşılanacak koşulları belirtemezseniz.

SELECT yan tümcesi her zaman BIR SELECT deyiminde FROM yan tümcesi önünde görünür.

FROM yan tümcesi

FROM Contacts

Bu FROM yan tümcesidir. Bir işleçten (FROM) ve ardından bir tanımlayıcıdan (Kişiler) oluşur.

FROM yan tümcesi seçilecek alanları listelemektedir.

WHERE yan tümcesi

WHERE City="Seattle"

Bu WHERE yan tümcesidir. Bir işleç (WHERE) ve ardından bir ifadeden (City="Seattle") oluşur.

Not: SELECT ve FROM yan tümcelerinden farklı olarak, WHERE yan tümcesi SELECT deyiminin gerekli bir öğesi değildir.

SQL'in SELECT, FROM ve WHERE yan tümcelerini kullanarak gerçekleştirmesine olanak sağlayan birçok eylemi gerçekleştirabilirsiniz. Bu yan tümceleri nasıl kullanabileceğiniz hakkında daha fazla bilgi şu ek makalelerde sunulmaktadır:

Sayfanın Başı

Sonuçları sıralama: ORDER BY

Microsoft Excel gibi Access de sorgu sonuçlarını veri sayfasında sıralamanıza olanak sağlar. Sorguda, order by yan tümcesi kullanarak sorgu çalıştırıla sonuçları nasıl sıralamak istediğiniz de belirtebilirsiniz. ORDER BY yan tümcesi kullanıyorsanız, bu SQL deyiminin son yan tümcesidir.

ORDER BY yan tümcesi, sıralama işlemlerini uygulamak istediğiniz sırada, sıralama için kullanmak istediğiniz alanların listesini içerir.

Örneğin, sonuçların önce Şirket alanı değerine göre azalan düzende sıralanmış ve Şirket için aynı değere sahip kayıtlar varsa, E-posta Adresi alanı değerlerine göre artan düzende sıralanmış olduğunu varsayalım. ORDER BY yan tümceniz aşağıdakine benzer:

ORDER BY Company DESC, [E-mail Address]

Not: Varsayılan olarak, Access değerleri artan düzende sıralar (A-Z, en küçükten en büyüğe). Bunun yerine, değerleri azalan düzende sıralamak için DESC anahtar sözcüğünü kullanın.

ORDER BY yan tümcesi hakkında daha fazla bilgi için ORDER BY Yan Tümcesi konu başlığına bakın.

Sayfanın Başı

Özetlenmiş verilerle çalışma: GROUP BY ve HAVING

Bazen bir aydaki toplam satışlar veya stokta en pahalı öğeler gibi özetlenmiş verilerle çalışmak istiyor olur. Bunu yapmak için SELECT yan tümcenizin toplama işlevi bir alana bir metin kodu uygulayabilirsiniz. Örneğin, sorgunuza her şirket için listelenen e-posta adreslerinin sayısını göstermesini istiyorsanız, SELECT yan tümceniz aşağıdakine benzer olabilir:

SELECT COUNT([E-mail Address]), Company

Kullanabileceğiniz toplama işlevleri, kullanmak istediğiniz alan veya ifadede yer alan verilerin türüne bağlıdır. Kullanılabilir toplama işlevleri hakkında daha fazla bilgi için SQL Toplama İşlevleri makalesine bakın.

Toplama işlevinde kullanılmadan alanları belirtme: GROUP BY yan tümcesi

Toplama işlevlerini kullanırken, genellikle GROUP BY yan tümcesi de oluşturmanız gerekir. GROUP BY yan tümcesi, toplama işlevini uygulamayyabilecek tüm alanları listeler. Toplama işlevlerini sorgunun tüm alanlarına uygulaysanız, GROUP BY yan tümcesini oluşturmanıza gerek olmaz.

GROUP BY yan tümcesi WHERE yan tümcesini veya WHERE yan tümcesi yoksa FROM yan tümcesini hemen izler. GROUP BY yan tümcesi, SELECT yan tümcesinde görünen alanları listeler.

Örneğin, önceki örnekten devam etmek gerekirse, SELECT yan tümceniz [E-posta Adresi] için bir toplama işlevi uygular ama Company için uygulamazsa GROUP BY yan tümceniz aşağıdakine benzer:

GROUP BY Company

GROUP BY yan tümcesi hakkında daha fazla bilgi için GROUP BY Yan Tümcesi konu başlığına bakın.

Grup ölçütleri kullanarak toplama değerlerini sınırlama: HAVING yan tümcesi

Sonuçlarınızı sınırlandıracak ölçütler kullanmak istiyor, ancak ölçüt uygulamak istediğiniz alan bir toplama işlevinde kullanılıyorsa WHERE yan tümcesi kullanılamaz. Bunun yerine HAVING yan tümcesi kullanırsiniz. HAVING yan tümcesi WHERE yan tümcesi gibi çalışır, ancak toplanan veriler için kullanılır.

Örneğin, SELECT yan tümcenizin ilk alanıyla AVG işlevini (ortalama değeri hesaplar) kullanabileceğinizi varsayalım:

SELECT COUNT([E-mail Address]), Company

Sorgunun, sonuçları count işlevinin değerine göre kısıtlamak için, WHERE yan tümcesinde bu alan için ölçüt kullanamazsanız. Bunun yerine, ölçütleri having yan tümcesine koyabilirsiniz. Örneğin, yalnızca sorgunun şirketle ilişkilendirilmiş birden çok e-posta adresi varsa satırları geri göndermesini istiyorsanız HAVING yan tümcesi aşağıdakine benzer olabilir:

HAVING COUNT([E-mail Address])>1

Not: Sorguda WHERE yan tümcesi ve HAVING yan tümcesi ( toplama işlevinde kullanılmaan alanların ölçütleri WHERE yan tümcesinde gidebilir ve toplama işlevleriyle kullanılan alanlar için ölçütler HAVING yan tümcesinde yer alan ölçütler) olabilir.

HAVING yan tümcesi hakkında daha fazla bilgi için HAVING Yan Tümcesi konu başlığına bakın.

Sayfanın Başı

Sorgu sonuçlarını birleştirme: UNION

Birbirine benzeyen birkaç sorgu tarafından döndürülen tüm verileri birlikte birleştirilmiş küme olarak gözden geçirmek için UNION işlecini kullanırız.

UNION işleci, iki SELECT deyimini tek bir deyimde birleştirmenizi sağlar. Birleştirin SELECT deyimleri aynı sayıda çıktı alanı, aynı sırada ve aynı veya uyumlu veri türlerine sahip olmalıdır. Sorguyu çalıştırabilirsiniz; buna karşılık gelen her alan kümesinden veriler tek bir çıktı alanında bir araya gelir; böylelikle sorgu çıktısı, her seçme deyimiyle aynı sayıda alana sahip olur.

Not: Bir birliği sorgusunun amacına yönelik olarak Sayı ve Metin veri türleri uyumludur.

UNION işlecini kullanırken, ALL tuşu sözcüğüyle sorgu sonuçlarının yinelenen satırlar (varsa) içerecek olup olmadığını da belirtebilirsiniz.

İki SELECT deyimini birleştiren bir birleştirme sorgusunun temel SQL söz dizimi aşağıdaki gibidir:

SELECT field_1
FROM table_1
UNION [ALL]
SELECT field_a
FROM table_a
;

Örneğin, Ürünler adlı bir tablon ve Hizmetler adlı başka bir tablon olduğunu varsayalım. Her iki tabloda da ürün veya hizmetin adını, fiyat, garanti veya garanti kullanılabilirliğini ve ürünü ya da hizmeti özel olarak sunıp sunmayabilirsiniz alanlarını içerir. Ürünler tablosu garanti bilgilerini depolasa da, Hizmetler tablosu garanti bilgilerini depolasa da, temel bilgiler aynıdır (belirli bir ürün veya hizmet bir kalite sözünü içerir). İki tablodaki dört alanı birleştirmek için aşağıdaki gibi bir birleştirme sorgusu kullanabilirsiniz:

SELECT name, price, warranty_available, exclusive_offer
FROM Products
UNION ALL
SELECT name, price, guarantee_available, exclusive_offer
FROM Services
;

UNION işleci kullanarak SELECT deyimlerini birleştirme hakkında daha fazla bilgi için bkz. Bir birleştirme sorgusu kullanarak çeşitli seçme sorgularının sonuçlarını birleştirme.

Sayfanın Başı

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

Office yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Office Insider Programına Katılın

Bu bilgi yararlı oldu mu?

Görüşleriniz için teşekkür ederiz!

Geri bildiriminiz için teşekkürler! Office destek temsilcilerimizden biriyle görüşmeniz yararlı olabilir.

×