Access SQL'e Giriş

Önemli : Bu makale makine çevisidir. Bkz. yasal uyarı. Bu makalenin İngilizce sürümüne buradan ulaşabilirsiniz.

Veritabanından veri almak istediğiniz zaman, veriler için yapılandırılmış sorgu dili veya SQL kullanarak isteyin. SQL veritabanı programlarını anlama İngilizce çok benzeyen bir bilgisayar dil olur. Microsoft Access her sorguda SQL kullandığından olduğunu bilerek SQL önemlidir. SQL nasıl çalıştığını anlamak daha iyi sorguları oluşturmanıza yardımcı olur ve sorgu istediğiniz sonuçları vermeyen zaman düzeltme size kolaylaştırabilir.

Not : Web sorgusunda SQL'i düzenleyemezsiniz.

Bu makalede

SQL nedir?

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

Sonuçları sıralama: sipariş göre

Özetlenmiş verilerle çalışma: GRUPLAMA ölçütü ve HAVING

Sorgu sonuçlarını birleştiren: BİRLİĞİ

SELECT yan tümcesini hakkında daha fazla bilgi

FROM yan tümcesi hakkında daha fazla bilgi

WHERE yan tümcesini hakkında daha fazla bilgi

SQL Nedir?

SQL kümesi olguları ve aralarındaki ilişkileri ile çalışmak için bir bilgisayar dil olur. Access gibi ilişkisel veritabanı programlarını SQL verilerle çalışmak için kullanın. Birçok bilgisayar diller gibi SQL gibi ISO ve ANSI standartları gövdesi tarafından tanınan uluslararası bir standardıdır.

SQL soruları yanıtlayın yardımcı olabilecek veri kümelerini açıklamak için kullanın. SQL kullandığınızda, doğru sözdizimini kullanmanız gerekir. Söz dizimi kuralları tarafından bir dil öğelerini düzgün birleştirilir kümesidir. SQL sözdizimi İngilizce söz dizimine dayanır ve pek çok aynı öğeleri Visual Basic for Applications (VBA) sözdizimi için kullanır.

Örneğin, adı Mary olan iletişim kişilerinin soyadı listesini alan basit bir SQL deyimi aşağıdakine benzeyebilir:

SELECT Last_Name
FROM Contacts
WHERE First_Name = 'Mary';

Not : SQL yalnızca verileri işlemek için aynı zamanda oluşturma veya değiştirme gibi tabloları veritabanı nesnelerinin tasarım için kullanılmaz. Veri tanımlama dili (DDL) oluşturma ve veritabanı nesnelerini değiştirme için kullanılan SQL parçası olarak adlandırılır. Bu konu DDL kapsamaz. Daha fazla bilgi için başlıklı makaleye bakın Oluştur veri tanımı sorgusunu kullanarak tablo veya dizin değiştirmek veya.

SELECT deyimleri

SQL kullanarak bir veri kümesini açıklamak için bir SELECT deyimi yazmalısınız. SELECT deyimi, bir veritabanından almak istediğiniz bir veri kümesinin tam açıklamasını içerir. Bu, aşağıdakileri kapsar:

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

  • Farklı kaynaklardaki verilerin nasıl bir ilişki içinde olduğu.

  • Verileri hangi alan ve hesaplamaların üreteceği.

  • Veri edilmek eşleşmesi gereken ölçütleri dahil.

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

SQL yan tümceleri

Cümlelerde olduğu gibi, SQL deyiminin de yan tümceleri vardır. Her yan tümce SQL deyimi için bir işlev gerçekleştirir. Bir SELECT deyiminde bazı yan tümceler gerekir. Aşağıdaki tabloda en sık kullanılan SQL yan tümceleri listelenmektedir.

SQL yan tümcesi

Yaptığı işlem

Gerekli

SELECT

İlgilenilen verileri içeren alanları listeler.

Evet

FROM

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

Evet

WHERE

Her kaydın sonuçlara dahil edilebilmek için sağlaması gereken alan ölçütlerini belirtir.

Hayır

ORDER BY

Sonuçları sıralama yöntemini belirtir.

Hayır

GROUP BY

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

Yalnızca bu tür alanlar varsa

HAVING

Toplama işlevleri içeren bir SQL deyiminde, SELECT deyiminde özetlenen alanlar için geçerli koşulları belirtir.

Hayır

SQL terimleri

Her SQL yan tümcesi terimlerden oluşur — bunlar bir konuşmanın bölümlerine benzetilebilir. Aşağıdaki tablo, SQL deyimleri türlerini listeler.

SQL terimi

Benzer cümle öğesi

Tanım

Örnek

tanımlayıcı

ad

Bir alanın adı gibi bir veritabanı nesnesini tanımlamak için kullandığınız bir ad.

Customers.[Phone Number]

işleç

fiil veya zarf

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

AS

sabit

ad

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

42

ifade

sıfat

Tanımlayıcılar, işleçler, sabitler ve işlevlerden oluşan ve tek bir değer üreten birleşim.

>= Products.[Unit Price]

Sayfanın Başı

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

Bir SQL deyimi aşağıdaki genel biçime sahiptir:

SELECT field_1
FROM table_1
WHERE criterion_1
;

Notlar : 

  • Access bir SQL deyimindeki satır sonlarını yok sayar. Ancak, kendiniz ve başkaları için SQL deyimlerinizin daha rahat okunabilmesine yardımcı olmak üzere her yan tümcede bir satır kullanmayı düşünebilirsiniz.

  • Her bir SELECT deyimi, bir noktalı virgül (;) ile biter. Noktalı virgül son yan tümcenin sonunda veya SQL deyiminin sonunda kendi başına bir satır olarak görüntülenebilir.

Access'te bir örnek

Aşağıdaki öğeler, basit bir seçme sorgusu için SQL deyiminin Access'te nasıl görünebileceğini göstermektedir:

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 ifadesi "Kişiler adlı tablodaki E-posta Adresi ve Şirket adlı alanlarda depolanan verilerden, Şehir alanı Seattle olan kayıtları seç" anlamına gelir.

SQL sözdiziminin nasıl çalıştığını anlamak için bu örneğe tek tek her yan tümceyi ele alarak göz atalım.

SELECT yan tümcesi

SELECT [E-mail Address], Company

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

Bir tanımlayıcı boşluk veya özel karakterler içeriyorsa ("E-posta Adresi" gibi), köşeli ayraç içine alınmalıdır.

SELECT yan tümcesinin hangi tabloların alanları içerdiğini söylemesi gerekmez ve dahil edilecek veriler tarafından sağlanması gereken koşulları belirtemez.

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

FROM yan tümcesi

FROM Contacts

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

FROM yan tümceleri, seçilecek alanları listelemez.

WHERE yan tümcesi

WHERE City="Seattle"

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

Not : SELECT ve FROM yan tümcelerinin aksine, WHERE yan tümcesi SELECT deyiminin gerekli bir öğesi değildir.

SQL kullanarak yapmanıza olanak tanıyan eylemleri birçoğunu gerçekleştirebileceğiniz seçin, Kimden ve WHERE yan tümceleri. Hakkında daha fazla bilgi Bu yan tümceler kullandığınız aşağıdaki bölümlerde, bu makalenin sonunda verilmiştir:

SELECT yan tümcesini hakkında daha fazla bilgi

FROM yan tümcesi hakkında daha fazla bilgi

WHERE yan tümcesini hakkında daha fazla bilgi

Sonuçları sıralama: ORDER BY

Microsoft Office Excel gibi, Access de sorgu sonuçlarını bir veri sayfasında sıralamanıza olanak tanır. Ayrıca sorguda, sorgu çalıştırıldığında sonuçları nasıl sıralamak istediğinizi, ORDER BY yan tümcesini kullanarak belirtebilirsiniz. ORDER BY yan tümcesini kullandığınızda, bu yan tümce SQL deyimindeki son yan tümce olur.

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

Örneğin, sonuçlarınızın önce Şirket alanının değerine göre azalan sırada sıralanmasını ve Şirket için aynı değere sahip kayıtlar varsa E-posta Adresi'ndeki değerlere göre artan sırada sıralanmasını istiyorsunuz. ORDER BY yan tümceniz aşağıdakine benzer:

ORDER BY Company DESC, [E-mail Address]

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

ORDER BY yan tümcesi hakkında daha fazla bilgi için Sipariş BY yan tümcesikonusuna bakın.

Sayfanın Başı

Özetlenen veriler ile çalışma: GROUP BY ve HAVING

Bazen, bir ay toplam Satışlar veya stoka en pahalı öğeler gibi özetlenmiş verileri çalışmak istediğiniz. Bunu yapmak için bir toplama işlevi bir alana SELECT yan tümcenizde uygulanır. E-posta adreslerini her şirket için listelenen sayısını göstermek için sorgunuzu isterseniz, örneğin, SELECT yan şöyle olabilir:

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

Kullanabileceğiniz toplama işlevleri alanı ya da kullanmak istediğiniz ifadeyi veri türüne göre değişir. Kullanılabilir toplama işlevleri hakkında daha fazla bilgi için SQL toplama işlevleribaşlıklı makaleye bakın.

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

Toplama işlevlerini kullandığınızda genelde bir GROUP BY yan tümcesi oluşturmanız gerekir. GROUP BY yan tümcesi, toplama işlevi uygulamadığınız tüm alanları listeler. Bir sorgudaki tüm alanlara toplama işlevleri uygularsanız, GROUP BY yan tümcesi oluşturmanız gerekmez.

GROUP BY yan tümcesi hemen WHERE yan tümcesinin ardından gelir; eğer WHERE yan tümcesi yoksa FROM yan tümcesini takip eder. GROUP BY yan tümcesi, alanları SELECT yan tümcesinde görüntülendikleri şekilde listeler.

Örneğin, önceki örneği devam ettirecek olursak, SELECT yan tümceniz [E-posta Adresi]'ne bir toplama işlevi uygular, ancak Şirket'e uygulamazsa, GROUP BY yan tümcesi aşağıdakine benzer:

GROUP BY Company

GROUP BY yan tümcesi hakkında daha fazla bilgi için Grup BY yan tümcesikonusuna bakın.

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

Sonuçlarınızı sınırlamak için ölçütler kullanmak isterseniz, ancak ölçüt uygulamak istediğiniz alan bir toplama işlevinde kullanılıyorsa WHERE yan tümcesi kullanamazsınız. Bunun yerine, bir HAVING yan tümcesi kullanırsınız. HAVING yan tümcesi WHERE yan tümcesi gibi çalışır ancak toplanmış veriler için kullanılır.

Örneğin, AVG işlevini (bir ortalama değer hesaplar) SELECT yan tümcenizdeki ilk alanla kullandığınızı varsayın:

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

Sorgunun sonuçları bu COUNT işlevine dayanarak sınırlamasını isterseniz, bu alan için WHERE yan tümcesinde bir ölçüt kullanamazsınız. Bunun yerine ölçütleri bir HAVING yan tümcesine yerleştirirsiniz. Örneğin, sorgunun yalnızca şirketle ilişkili birden fazla e-posta adresi olduğunda satır döndürmesini istiyorsanız, HAVING yan tümcesi aşağıdakine benzeyebilir:

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

Not : Bir sorgunun WHERE yan tümcesi ve HAVING yan tümcesi olabilir — toplama işlevinde kullanılmayan alanların ölçütleri WHERE yan tümcesine gider, toplama işleviyle kullanılan alanların ölçütleri HAVING yan tümcesine gider.

HAVING yan tümcesi hakkında daha fazla bilgi için Yan tümcesi YAŞIYORSUNUZkonusuna bakın.

Sayfanın Başı

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

Birçok benzer seçme sorgusu tarafından döndürülen verilerin tümünü birleştirilmiş bir küme olarak gözden geçirmek için bir UNION işleci kullanabilirsiniz.

UNION işleci iki SELECT deyimini bir deyimde birleştirmenize izin verir. Birleştirdiğiniz SELECT deyimlerinin, aynı veya uyumlu veri türleri taşıyan aynı sırada, aynı sayıda çıktı alanına sahip olması gerekir. Sorguyu çalıştırdığınızda, her ilgili alan kümesindeki veriler tek bir çıktı alanında birleştirilir, böylece sorgu çıktısı her select deyimiyle aynı sayıda alan taşır.

Not : Birleşim sorgusunun kullanımında Sayı ve Metin veri türleri uyumludur.

UNION işlecini kullandığınızda, ALL anahtar sözcüğünü kullanarak varsa tekrarlayan satırların da sorgu sonuçlarına dahil edilip edilemeyeceğini belirtebilirsiniz.

İki SELECT deyimini birleştiren bir birleşim sorgusunun temel SQL sözdizimi aşağıdaki gibidir:

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

Örneğin, biri Ürünler diğeri Hizmetler adında iki tablonuz olduğunu varsayın. Her iki tabloda da, ürün veya hizmetin adı, fiyat, garanti veya garantinin kullanılabilirliği ve ürün veya hizmeti özel olarak sunup sunmadığınızı içeren alanlar bulunur. Ürünler tablosu ürün garanti bilgilerini ve Hizmetler tablosu hizmet garanti bilgilerini saklasa da, temel bilgiler aynıdır (belirli bir ürün veya hizmetin bir kalite vaadiyle sunulup sunulmadığı). İki tablodaki dört alanı birleştirmek için aşağıdaki gibi bir birleşim sorgusu kullanabilirsiniz:

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

SELECT deyimleri, UNION işleci kullanarak birleştirme hakkında daha fazla bilgi için birleşim sorgusu kullanarak, birkaç seçme sorgusunun sonuçlarını birleştirmemakalesine bakın.

Sayfanın Başı

SELECT yan tümcesi hakkında daha fazla bilgi

Bir SELECT deyiminde, SELECT yan tümcesi verileri içeren alanları listeler. kullanmak istediğiniz.

Tanımlayıcıları çevrelemek için köşeli ayraç kullanma

SELECT yan tümcesindeki bir alanın adını çevrelemek için köşeli ayraç kullanabilirsiniz. Ad boşluk ya da özel karakter (noktalama işaretleri gibi) içermiyorsa, köşeli ayraçlar isteğe bağlıdır. Ad boşluk ya da özel karakter içeriyorsa ayraçları kullanmanız gerekir.

İpucu : Boşluklar içeren bir ad daha kolay okunmasını ve formların ve raporların tasarım, ancak SQL deyimlerini yazarken daha fazla sayfanızdaki yapmaya sonlandırmak zamandan kazanabilirsiniz. Veritabanınızdaki nesneler adlandırdığınızda, bu olgu düşünmelisiniz.

SQL deyiminizde aynı adı taşıyan iki veya daha fazla alan varsa, her alanın veri kaynağı adını SELECT yan tümcesindeki alan adına eklemeniz gerekir. Veri kaynağı için FROM yan tümcesinde kullandığınız adı kullanırsınız.

Tüm alanları seçme

Bir veri kaynağındaki tüm alanları dahil etmek istediğinizde, SELECT yan tümcesinde tüm alanları tek tek listeleyebilir ya da yıldız karakterini (*) kullanabilirsiniz. Yıldız karakterini kullandığınızda, Access sorgu çalıştırıldığında veri kaynağının içereceği alanları belirler ve sorgudaki tüm alanları içerir. Bu, veri kaynağına yeni alanlar eklendiğinde sorgunun güncel kalmasını sağlamaya yardımcı olur.

Yıldızı, SQL deyimindeki bir veya daha fazla veri kaynağı ile kullanabilirsiniz. Yıldızı kullanıyorsanız ve birden fazla veri kaynağı varsa, Access'in tüm alanları hangi veri kaynağından dahil edeceğini belirleyebilmesi için, yıldızla birlikte veri kaynağı adını dahil etmeniz gerekir.

Örneğin, Siparişler tablosundaki tüm alanları ancak Kişiler tablosundan yalnızca e-posta adreslerini seçmek istediğinizi varsayın. SELECT yan tümcesi aşağıdakine benzeyebilir:

SELECT Orders.*, Contacts.[E-mail Address]

Not : Yıldızı ne zaman kullandığınızı takip edin. Veri kaynağına sonradan yeni alanlar eklenirse ve bunları planlamadıysanız, sorgu sonuçlarınız istediğiniz sonuçları vermeyebilir.

Farklı değerler seçme

Deyiminizin aynı veriden çok sayıda seçeceğini biliyorsanız ve tekrarlayan değerleri görmek istemiyorsanız, SELECT yan tümcenizde DISTINCT anahtar sözcüğünü kullanabilirsiniz. Örneğin, müşterilerinizin her birinin farklı konularla ilgili olduğunu, ancak bazılarının aynı telefon numarasını kullandığını varsayalım. Her telefon numarasının yalnızca bir kez görünmesini sağlamak isterseniz, SELECT tümcenizin şu aşağıdaki gibi görünür:

SELECT DISTINCT [txtCustomerPhone]

Alan veya ifadeler için farklı adlar kullanma: AS anahtar sözcüğü

Veri sayfası görünümündeki her alan için görüntülenen etiketi, AS anahtar sözcüğünü ve SELECT yan tümcenizdeki bir alan diğer adını kullanarak değiştirebilirsiniz. Alan diğer adı, sonuçların okunmasını kolaylaştırmak üzere bir alana atadığınız addır. Örneğin, txtCustPhone adlı bir alandan veri seçmek istiyorsanız ve alanda müşterilerin telefon numaraları bulunuyorsa, SELECT deyiminizde aşağıdaki gibi bir alan diğer adı kullanarak sonuçlarınızın daha kolay okunabilmesini sağlayabilirsiniz:

SELECT [txtCustPhone] AS [Customer Phone]

Not : Bir SELECT yan tümcesinde bir ifade kullandığınızda bir alan diğer adı kullanmalısınız.

Bir ifade kullanarak seçme

Bazen, verilerinize dayalı hesaplamalar bakmak istediğiniz veya alanın veri yalnızca bir bölümünü alın. Örneğin, müşteriler doğdun, yıl döndürmek istediğiniz veri veritabanınıza Doğum Tarihi alanına göre varsayalım. SELECT yan olabilir şuna benzer:

SELECT DatePart("yyyy",[BirthDate]) AS [Birth Year]

Bu ifade oluşan DatePart işlevi ve iki bağımsız değişken — "yyyy" (sabit) ve [BirthDate] (tanımlayıcı).

İfade tek bir giriş değeri verildiğinde tek değer çıktısı veriyorsa, alan olarak geçerli her türlü ifadeyi kullanabilirsiniz.

Sayfanın Başı

FROM yan tümcesi hakkında daha fazla bilgi

Bir SELECT deyiminde, FROM yan tümcesi SELECT yan tümcesinin kullanacağı verileri içeren tablo veya sorguları belirtir.

Belirli bir müşterinin telefon numarasını bilmek istediğinizi varsayın. Bu verileri saklayan alanı içeren tablonun adının tblCustomer olduğunu varsayarsak, FROM yan tümcesi aşağıdakine benzer:

FROM tblCustomer

Tanımlayıcıları çevrelemek için köşeli ayraç kullanma

Adı çevrelemek için köşeli ayraç kullanabilirsiniz. Ad boşluk ya da özel karakter (önlem işaretleri gibi) içermiyorsa, köşeli ayraçlar isteğe bağlıdır. Ad boşluk ya da özel karakter içeriyorsa ayraçları kullanmanız gerekir.

İpucu : Boşluklar içeren bir adı daha kolay okunmasını ve formların ve raporların tasarım, ancak size daha fazla SQL ifadeleri yazdığınızda yazın yapma sonlandırma zamandan kazanabilirsiniz. Veritabanınızdaki nesneler adlandırdığınızda, bu olgu düşünmelisiniz.

Veri kaynakları için yedek adlar kullanma

FROM yan tümcenizde bir tablo diğer adı kullanarak SELECT deyimindeki bir veri kaynağına başvuru yapmak için farklı bir ad kullanabilirsiniz. Tablo diğer adı, veri kaynağı olarak bir ifade kullandığınızda veya SQL deyiminin yazılmasını ve okunmasını kolaylaştırmak amacıyla bir sorgudaki veri kaynağına atadığınız addır. Bu özellikle, veri kaynağının adı uzun ve yazılması zor olduğunda, farklı tablolardan aynı ada sahip birden fazla alan bulunduğunda kullanışlı olur.

Örneğin, biri tblCustomer diğeri tblOrder adlı iki tablodan gelen ve her ikisi de ID adını taşıyan iki alandan veri seçmek istediğinizde, SELECT yan tümceniz aşağıdakine benzeyebilir:

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

FROM yan tümcenizde tablo diğer adları kullanarak sorgunun yazılmasını kolaylaştırabilirsiniz. Tablo diğer adları içeren FROM yan tümceniz aşağıdakine benzeyebilir:

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

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

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

Not : Bir tablo diğer adı kullandığınızda, SQL deyiminizdeki veri kaynağına diğer adı ya da veri kaynağının tam adını kullanarak başvuru yapabilirsiniz.

İlgili verileri birleştirme

İki veri kaynağından gelen ikili kayıtları bir sorgu sonucunda tekli kayıtlar olarak görüntülemeniz gerektiğinde birleşme işlemi gerçekleştirebilirsiniz. Birleşme, iki veri kaynağının ilişkisini belirten ve diğer kaynakta karşılık gelen veri olmadığında bir kaynaktan gelen verilerin dahil edilip edilmediğini belirten bir SQL işlemidir.

İki veri kaynağındaki bilgileri birleştirmek için sahip oldukları ortak alanda bir birleşme işlemi gerçekleştirirsiniz. Bu alanda depolanan değerler eşleştiğinde, kayıtlardaki veriler sonuçlarda birleştirilir.

Verileri birleştirmenin yanında, ilgili tabloda karşılık gelen bir kayıt olmadığında iki tablodaki kayıtların birleştirilip birleştirilmeyeceğini belirtmek amacıyla da bir birleşme kullanabilirsiniz.

Örneğin, bir sorguda iki tablodan veri kullanmak istediğinizi varsayalım: ID adını taşıyan ve tblOrder. İki tablonun her iki alan, tanımlayan MüşteriNo sahip bir Müşteri. ID adını taşıyan tablosundaki her kaydın tblOrder tabloda bir veya birden çok ilgili kayıtları olabilir ve karşılık gelen değerleri MüşteriNo alanındaki değerlere göre belirlenir.

Sorgunun, kayıtları birleştirirken bir tablodaki kayıt için diğer tabloda karşılık gelen bir kayıt olmadığında, her iki tablodaki kaydı da sonuca dahil etmeyecek şekilde tabloları birleştirmek istiyorsanız, FROM yan tümceniz aşağıdakine benzer şekilde olabilir (burada satır sonu okunabilirlik sağlamak üzere eklenmiştir):

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

Microsoft Office Access'te, birleştirmeler bir SELECT deyiminin FROM yan tümcesinde gerçekleşir. İki tür birleştirme bulunur: iç birleştirmeler ve dış birleştirmeler. Aşağıdaki bölümlerde, bu iki tür birleştirme açıklanmaktadır.

İç birleştirmeler

İç birleştirmeler, en yaygın birleştirme türüdür. İç birleştirme içeren bir sorgu çalıştırıldığında, sorgu sonuçlarına yalnızca birleştirilen tabloların ikisinde de ortak bir değer bulunan kayıtlar dahil edilir.

İç birleştirme aşağıdaki sözdizimine sahiptir (burada satır sonu okunabilirlik sağlamak üzere eklenmiştir):

FROM table1 INNER JOIN table2
ON table1.field1 compopr table2.field2

Aşağıdaki tabloda, bir INNER JOIN işleminin farklı kısımları açıklanmaktadır.

Kısım

Açıklama

tablo1, tablo2

Kayıtların birleştirileceği tabloların adı.

alan1, alan2

Birleştirilen alanların adı. Alanlar sayısal değilse, aynı veri türü olmalı ve aynı türde veriler içermelidir, ancak alanların aynı ada sahip olması gerekmez.

karşılaştırma

Herhangi bir ilişkisel karşılaştırma işleci: "=," "<," ">," "<=," ">=" veya "<>."

Dış birleştirme

Dış birleşimler de iki kaynaktan gelen bilgilerin nasıl birleştirileceğini belirtmeleri açısından iç birleşimlere benzer. Ortak değere sahip olmayan verilerin sonuca dahil edilip edilmeyeceklerini de belirlemeleri açısından iç birleşimlerden farklıdır. Dış birleşimler yön belirtir: birleşimde belirtilen ilk veri kaynağındaki tüm kayıtların mı (sol birleşim denir) yoksa ikinci veri kaynağındaki tüm kayıtların mı (sağ birleşim denir) dahil edileceğini belirtebilirsiniz.

Dış birleştirme aşağıdaki sözdizimine sahiptir:

Table1 TABLOSUNDAKİ [LEFT | DOĞRU] JOIN tablo2
ON tablo1.alan1karşılaştırma tablo2.alan2

Aşağıdaki tabloda, LEFT JOIN ve RIGHT JOIN işlemlerinin farklı kısımları açıklanmaktadır.

Kısım

Açıklama

tablo1, tablo2

Kayıtların birleştirileceği tabloların adı.

alan1, alan2

Birleştirilen alanların adı. Alanları aynı veri türü olması ve aynı tür veriler içeren, ancak aynı ada sahip zorunda değildir.

karşılaştırma

Herhangi bir ilişkisel karşılaştırma işleci: "=," "<," ">," "<=," ">=" veya "<>."

Birleştirmeler hakkında daha fazla bilgi için tabloları ve sorguları birleştirmemakalesine bakın.

Sayfanın Başı

WHERE yan tümcesi hakkında daha fazla bilgi

Sorguda getirilen kayıt sayısını sınırlamak için veri kullanmak istediğinizde, sorgu ölçütler bir SELECT deyiminin WHERE yan tümcesini kullanın. Bir sorgu ölçütü formüle benzer — alanı başvurular, işleçler ve sabitler oluşabilen bir dizedir. Sorgu ölçütü ifadetürüdür.

Aşağıdaki tablolarda bazı örnek ölçütler görülmekte ve nasıl çalıştıkları anlatılmaktadır.

Ölçüt

Açıklama

>25 ve <50

Bu ölçüt, Fiyat veya StoktakiBirimler gibi bir Sayı alanına uygulanır. Yalnızca, ilgili alanın değeri 25'ten büyük ve 50'den küçük olan kayıtları içerir.

DateDiff ("yyyy", [Doğum Tarihi], Date()) > 30

Bu ölçüt, Doğum Tarihi gibi bir Tarih/Saat alanına uygulanır. Yalnızca, bir kişinin doğum tarihi ile bugünün tarihi arasındaki yıl sayısının 30'dan büyük olduğu kayıtlar sorgu sonuçlarına dahil edilir.

Is Null

Bu ölçüt, alan değeri boş olan kayıtları göstermek için tüm alan türlerine uygulanabilir.

Önceki tabloda gösterildiği gibi, ölçütler, uygulandıkları alanın veri türüne ve belirli gerekliliklerinize bağlı olarak birbirinden çok farklı görünebilir. Bazı ölçütler basittir ve temel işleç ve sabitleri kullanır. Bazılarıysa karmaşıktır ve işlevler ile özel işleçler kullanır ve alan başvuruları içerir.

Önemli : Bir alanı olan bir toplama işlevi kullanılırsa, o alanın ölçütlerini WHERE yan tümcesinde belirtemezsiniz. Bunun yerine, HAVING yan tümcesi, derlenmiş alanları yönelik ölçütler belirtmek için kullanın. Daha fazla bilgi için bkz: bölüm özetlenmiş verilerle çalışma: GRUPLAMA ölçütü ve HAVING.

WHERE yan tümcesi sözdizimi

WHERE yan tümcesi aşağıdaki temel sözdizimine sahiptir:

WHERE field = criterion

Örneğin, bir müşterinin telefon numarasını istiyorsunuz ancak yalnızca müşterinin soyadının Bagel olduğunu hatırlıyorsunuz. Veritabanınızdaki tüm telefon numaralarına bakmak ve sonuçları sınırlamak için bir WHERE yan tümcesi kullanabilir ve istediğiniz telefon numarasını bulmayı kolaylaştırabilirsiniz. Soyadlarının LastName adlı bir alanda depolandığı varsayımıyla, WHERE yan tümceniz aşağıdaki gibi görünür:

WHERE [LastName]='Bagel'

Not : Ölçüt, WHERE yan tümcesinde değerlerinin denkleştirme üzerinde temel gerekmez. Büyüktür (>) veya (<) azını gibi diğer karşılaştırma işleçlerini kullanabilirsiniz. Örneğin, NEREYE [Fiyat] > 100.

Veri kaynaklarını birleştirmek için WHERE yan tümcesini kullanma

Bazen veri kaynaklarını, eşleşen veriler içeren ancak farklı veri türlerine sahip alanlara dayanarak birleştirmek isteyebilirsiniz. Örneğin, bir tablodaki bir alan Sayı veri türüne sahip olabilir ve bu alanı başka bir tablodaki Metin veri türünde olan bir alanla karşılaştırmak isteyebilirsiniz.

Farklı veri türlerinde olan alanlar arasında bir birleştirme oluşturamazsınız. Farklı veri türlerine sahip alanlardaki değerlere dayanarak iki veri kaynağındaki verileri birleştirmek için LIKE anahtar sözcüğünü kullanarak bir alanı diğer alanın ölçütü olarak kullanan bir WHERE yan tümcesi oluşturursunuz.

Örneğin, yalnızca alan1'deki (tablo1'de bir metin alanı) verilerin alan2'deki (tablo2'de bir metin alanı) verilerle eşleştiği durumlarda tablo1 ve tablo2'deki verileri kullanmak istiyorsunuz. WHERE yan tümceniz aşağıdakine benzer:

WHERE field1 LIKE field2

WHERE yan tümcesinde kullanılacak ölçüt oluşturma hakkında daha fazla bilgi için Sorgu ölçütü örneklerimakalesine bakın.

Sayfanın Başı

Not : Makine Çevirisi Yasal Uyarısı: Bu makale, insan müdahalesi olmadan bir bilgisayar sistemi tarafından çevrilmiştir. Microsoft bu makine çevirilerini İngilizce bilmeyen kullanıcıların Microsoft ürünleri, hizmetleri ve teknolojileriyle ilgili içeriklerden yararlanmasına yardımcı olmak için sunar. Bu makale makine çevirisi olduğundan sözcük, cümle dizilimi ve gramer hataları içerebilir.

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.

×