VERİTABANI SİSTEMLERİ Dersi Veri Sorgulama soru cevapları:

Toplam 63 Soru & Cevap
PAYLAŞ:

#1

SORU:

SQL nedir?


CEVAP:

SQL, Yapılandırılmış Sorgu Dili veri ile ilgili yapılacak işlemleri tarif etmek için İngilizce dil yapısında geliştirilmiş bir bildirim dilidir.


#2

SORU:

SQL nasıl bir yapı sunmaktadır?


CEVAP:

Bu dil kullanıcıların ya da istemci yazılımlarının veri ile ilgili isteklerini alarak, depoladığı veriler üzerinde uygulayan bir yapıdadır. Diğer programlama dillerinden farklı olarak işlemleri değil sonuçları tarif eden bir yapısı vardır. Dolayısıyla veritabanı yönetim sistemi tarafından SQL komutları çözümlenerek istenilen işlem yerine getirilir. Bu yapı verinin eklenmesi, işlenmesi ve sorgulanması gibi birçok işlemin istemci ya da kullanıcılar tarafından kolayca yapılmasını sağlamaktadır.


#3

SORU:

Veritabanı yönetim sistemlerinin kullanılma sebebi nedir?


CEVAP:

Veritabanı yönetim sistemlerini kullanmamızın temel nedenlerinden biri de verinin farklı görünümlerini elde edebilmektir. Organizasyonlarda tüm sistem verilerini barındıran merkezi veritabanları organizasyonda farklı kademe ve görevlerdeki çalışanların veri ihtiyacını karşılamaktadır. Örneğin bir bankada banko çalışanı mudisinin hesap bilgilerine ulaşmakta ve işlem yapmak için bir hesap kaydına ulaşırken bankanın müdürü aylık mevduat ortalaması bilgisine erişmek isteyebilir. Bu ve benzer veri ihtiyaçlarını karşılamak için veritabanı yönetim sistemleri yazılımı ihtiyaca göre veri kümesinin elde etmek üzere tasarlanmıştır.


#4

SORU:

SELECT komutunu açıklayınız?


CEVAP:

SELECT ifadesi ilişkisel veritabanı yönetim sistemlerinde veri kayıtlarını getirmek için kullanılan komuttur. Bu komut ile bir veri tablosunun tüm satırlarının getirilebileceği gibi bir veya daha çok sayıda tabloda bulunan sütün veya sütunlarının istenilen şartlara uyan kayıtlarını da getirmek mümkündür. SELECT, kullanıcıların istedikleri veri kümelerini tarif edebilmeleri için oldukça esnek bir yapıda tasarlanmıştır.


#5

SORU:

SELECT komutunun genel yazım kuralını belirtiniz?


CEVAP:

SELECT alan_listesi [INTO yeni_tablo]

[FROM tablo_kaynağı]

[WHERE seçme_koşulları]

[GROUP BY gruplama ifadeleri]

[HAVING Gruplanan_alan_kısıtlamaları]

[ORDER BY sıralama düzeni ASC DESC]


#6

SORU:

FROM ile başlayan satır ifadesi hangi işlemin olacağını ifade eder?


CEVAP:

FROM ile başlayan satır seçme işleminin hangi veri kümesinden yapılacağını belirtilir. Bu kısımda bir tablo, bir görünüm ya da bir alt sorgu yer alabilir.


#7

SORU:

WHERE ifadesi hangi işlemi ifade eder?


CEVAP:

WHERE satırı seçme işleminde görüntülenecek ya da hesaba katılacak satırların sınırlanması sağlanır. Filtreleme işlemi gibi düşünülebilir.


#8

SORU:

GROUP BY ifadesi hangi işlemi ifade eder?


CEVAP:

GROUP BY ifadesi verileri özetleme ya da gruplama işlemleri için kullanılabilecek bir seçme sorgusu bölümüdür.


#9

SORU:

HAVING ifadesi hangi işlemi ifade eder?


CEVAP:

HAVING Gruplanan ya da hesaplanan alanların sınırlanması için kullanılan bir kısımdır. Where kısmı ile karıştırılmaması gerekir.


#10

SORU:

ORDER BY ifadesi hangi işlemi ifade eder?


CEVAP:

ORDER BY sorgunun en sonunda yer alan sıralama işlemidir. Eylem gereği de tüm seçme işlemi tamamlandıktan sonra verinin kullanıcıya hangi sırada gönderileceği bu satıra yazılan komutlarla belirlenir.


#11

SORU:

Benzersiz değerlerin elde edilmesi nasıl sağlanabilir?


CEVAP:

Seçme sorgularında sıkça kullanılan ifadelerden birisi de bir alandaki verilerin tekrarsız olarak görüntülenmesini sağlayan DISTINCT ifadesidir. 9 satır verinin yer aldığı [Çalışanlar] tablosu için yazılan “SELECT DISTINCT [İş Unvanı] FROM [Çalışanlar]” sorgusu [İş Unvanı] alanındaki tüm verileri tekrarsız olarak “Genel Müdür Yardımcısı, Satış Koordinatörü, Satış Müdürü, Satış Temsilcisi” şeklinde dört satır ile görüntüler. DISTINCT ifadesi kayıtların sayılması ile ilgili işlevlerde de benzersiz satır sayısının sayılması ile ilgili kullanılmaktadır.


#12

SORU:

Sorgu sonuçlarının sıralanmasından örnek aracılığıyla bahsediniz?


CEVAP:

Seçme komutunun mantıksal işleme sırasının son iki adımı olan ORDER BY ve TOP ifadeleri elde edilen veri kümesinin kullanıcı ya da istemci yazılıma iletilmeden önce sıralanmasını sağlar. SELECT komutunun son kısmında yer alan ORDER BY ifadesinden sonra veri kümesinin istenilen alanlara göre sıralanması sağlanır. Aşağıda [Çalışanlar] tablosunun [Şehir], [Soyadı] ve [Ad] alanlarını sorgulayarak elde edilen veri kümesinin önce [Şehir]’e göre artan, [Ad]’ a göre azalan ve [Soyadı] alanına göre artan sıralayan bir seçme sorgusu yer almaktadır.

SELECT Şehir, Soyadı, Ad FROM Çalışanlar

ORDER BY Şehir, Ad DESC, Soyadı

Yukarıdaki örnek sorguya dikkat edilirse artan sıralama yapılan alan adlarının yanında herhangi bir ifade yok iken azalan sıralanmak istenen [Ad] alanının yanında DESC (DESCending: azalan) kelimesi yer almaktadır. Sorgu ifadelerinde sıralama yapılacak alanların sonuç kümesinde bulunma zorunluluğu yoktur. Bazı durumlarda da SELECT komutu ile elde edilen verinin en üst satırlarının görüntülenmesi gerekebilir. Örneğin en fazla satış yapılan on müşteri ya da en fazla ciro yapılan ürün listesi elde edilmek istenebilir. VTYS tüm veri hazırlama sürecini yerine getirdikten sonra en son TOP kısmını işleyerek en üstte yer alan satırlar görüntülenir ya da iletilir. TOP ifadesinin kullanımında doğal olarak verinin sıralanması da söz konusudur. Aksi durumda en üstte yer alacak verilerin çok bir anlamı olmayacaktır. Northwind veritabanında liste fiyatı en fazla olan üç ürünü bulmak için aşağıdaki sorgu yeterli olacaktır.

SELECT TOP (3) [Ürün Adı], [Liste Fiyatı]

FROM Ürünler ORDER BY [Liste Fiyatı] DESC

Sorguda TOP ifadesinden sonra parantez içinde yazılan ‘3’ ifadesi anlaşılacağı üzere en üstte yer alan üç satırın görüntülenmesini sağlar. Diğer taraftan sorgunun son kısmında yer alan sıralama komutunun yapısına dikkat edilmelidir.


#13

SORU:

Seçimlerin sınırlanmasını örnekleyerek açıklayınız?


CEVAP:

Veri sorgulamasında kayıtların belirli ölçütlere göre sınırlanması ya da diğer bir ifadeyle tablolar içinde aranması için WHERE ifadesi kullanılır. Basit bir örnek ile başlanarak WHERE komutu ile gerçekleştirilebilecek koşul ifadelerine bu kısımda yer verilecektir. Birçok istemci yazılımı, işlem yapılmak istenen nesnenin (müşteri, hesap, ürün, öğrenci vb.) girişi yapılarak veritabanında sorgular. Bu gibi işlemlerde Select sorgusunun WHERE komutu sonrası aranacak bilginin eşleştirilmesi yapılır. [Ürünler] tablosunda ”Ceviz” adlı ürünün [Liste Fiyatı] ve [Ürün Kodu] bilgisi sorgulanmak için oluşturulmuş aşağıdaki sorguda WHERE’den sonra parantez içinde “[Ürün Adı]= 'Ceviz' ” şeklinde yazılan ifade ilgili ürünün bilgisinin veri tablosu içerisinde bulunarak görüntülenmesini sağlar. Bu ifade de parantez gerekli değildir ancak koşul ifadelerinin sayısının fazla olması parantez kullanımını oldukça önemli hâle getirmektedir.

SELECT [Ürün Kodu], [Ürün Adı], [Liste Fiyatı] FROM Ürünler

WHERE ([Ürün Adı] = 'Ceviz')

MS SQL Server VTYS’i yazılımında sıkça kullanılan koşul ifadeleri Tablo 6.1’de yer almaktadır. Bazı ifadelerin yanında köşeli parantez içerisindeki [NOT] ifadesi ilgili koşulun değilini ifade etmek için de kullanılabilir.

Ürünler Tablosunda [Liste fiyatı] 40 ile 60 arasında olan ve [Ürün Adı] içerisinde “A” harfi olan ürünleri bulmak istersek aşağıdaki koşul ifadelerinin yazılması gerekmektedir.

SELECT [Ürün Kodu], [Ürün Adı], [Liste Fiyatı] FROM Ürünler

WHERE ([Liste Fiyatı] BETWEEN 20 AND 40) AND ([Ürün Adı] LIKE '%A%')

Sorgu cümleciği incelendiğinde WHERE ifadesinden sonra AND ile birbirine bağlanmış iki koşulun olduğu görülmektedir. İlk kısım liste fiyatı koşulu ve diğer koşul ise ürün adı ile ilgili koşuldur. Koşullar kayıt bazlı değerlendirildiği için her bir kayıtın bu koşulu sağlayıp sağlamadığı kontrol edilecek ve her ikisini birlikte sağlayanlar kullanıcıya görüntülenecektir. İkinci koşuldaki LIKE’dan sonra gelen '%A%' ifadesi, metin içerisindeki % karakteri herhangi bir metin katarını temsil eder. Joker karakter ismi de verilen bu semboller ile metin içerisindeki desenler aranabilmektedir.


#14

SORU:

Where komutunun kullanım amacını örneklendirerek açıklayınız?


CEVAP:

Basit olarak iki tabloyu birbirine bağlamak için WHERE komutu kullanılabilir. Örnek veritabanında hangi müşterinin hangi siparişleri verdiğini listelemek için [Müşteriler] ve [Siparişler] tablosunu WHERE komutu ile bağlayarak bir sorgu yazılmak istenirse aşağıdaki sorgu komutu yazılabilir.

SELECT Top (3) Müşteriler.Şirket, Müşteriler.Soyadı,

Müşteriler.Ad, Müşteriler. [No], Siparişler.[Müşteri No]

FROM Siparişler, Müşteriler

WHERE Siparişler.[Müşteri No] = Müşteriler.[No].


#15

SORU:

Join komutu ile tabloların bağlanmasını açıklayınız?


CEVAP:

Tabloları bir sorgu içerisinde birbiri ile bağlamanın en kolay ve yaygın yolu JOIN komutudur. JOIN komutu ile sadece iki değil çok sayıda tablo birbirine bağlanabilmektedir. Ayrıca farklı bağlanma türleri ile kullanıcıların istenilen veri kümelerini elde etmelerine olanak sağlar. Farklı JOIN komutları olmasına karşı yazım kuralı genelde benzerdir.


#16

SORU:

Inner bağlantıyı açıklayınız?


CEVAP:

Her iki tablonun da eşleşen alanlarının seçilmesi sağlanır. Diğer bir deyişle kesişim kümesi seçilir. Aşağıda [A] ve [B] tablosunun INNER JOIN komutu ile birleştiren sorgu ve sonucu yer almaktadır. Seçme işleminin sonucunda her iki kümenin bağlantılı olduğu alandaki ortak değerlerin sayısı kadar satır görüntülenir.


#17

SORU:

Outer bağlantıları açıklayınız?


CEVAP:

Outer bağlantıları soldan, sağdan ve tüm (Full) şeklinde üç farklı bağlantı türünden oluşmaktadır. LEFT OUTER JOIN bağlantısı bu ifadenin solunda ve sağında kalan tabloların konumu baz alınarak soldaki tablonun tüm içeriğinin görüntülenmesi sağlar. RIGHT OUTER JOIN ifadenin sağında kalan tablodaki tüm değerlerin seçilmesini sağlar. FULL OUTER JOIN ise her iki tabloda yer alan tüm satırların görüntülenmesini sağlar.


#18

SORU:

Cross bağlantı nedir?


CEVAP:

Herhangi iki alanın eşleştirilmediği bağlantı türü çapraz (cross) bağlantıdır. Bu bağlantıda [A] daki her bir satır için [B] deki tüm satırlar tekrarlanır. Böylece her iki tablonun eleman sayılarının çarpımı çapraz bağlantı sonucu oluşan listenin satır sayısını verir. Çapraz tablo bağlantısı şablon veri tablolarının üretilmesinde kullanılabilmektedir.


#19

SORU:

Çok sayıda tablo nasıl bağlanır?


CEVAP:

Çok sayıda tablonun birbirine bağlanması için farklı bir bağlantı türü yoktur. JOIN komutu aynı yapıyla kullanılır ancak ON kısmında birbiri ile ilişkili alanların doğru tarif edilmesi gerekir.


#20

SORU:

Veri kümelerinin birleştirilmesini anlatınız?


CEVAP:

Tabloların birbirine bağlanması ilişkili alanların eşlenerek bağlanan tabloda karşılığının aranması için kullanılır. Veri birleştirme ise birbiri ile aynı sayıda ve türde alanları olan veri kümelerinin alt alta birleştirilmesi, kesişim kümelerinin ve farklarının bulunması işlemidir. Örneğin depolardaki stok miktarının hesaplanmasında depoya giren ve çıkan tablolarının birleştirilerek stok miktarının hesaplanmasında birleştirme sorguları kullanılabilir. Veri kümeleri INTERSECT, EXCEPT, UNION, UNION ALL komutları ile birleştirilebilir.


#21

SORU:

Intersect ifadesi ne zaman kullanılır?


CEVAP:

İki veya daha çok veri kümesindeki satırların kesişiminin bulunmasında kullanılır.


#22

SORU:

Expect ifadesi ne zaman kullanılır?


CEVAP:

Expect ifadesi birleştirilen sorgular veri kümeleri arasındaki farkı listelemek için kullanılırlar.


#23

SORU:

Union ve Union All komutları ne zaman kullanılır?


CEVAP:

UNION ve UNION ALL komutları kümelerin birleşim kümelerini elde etmek için kullanılır. UNION ifadesi ile birleştirilmiş veri kümelerinde kesişim kümesi bir kez yer alır. UNION ALL ile birleştirilmiş kümelerde ise herhangi bir işlem yapılmadan iki liste alt alta eklenir.


#24

SORU:

Veritabanı tablolarında özetleme ve gruplama işlemlerinde hangi komut kullanılır?


CEVAP:

Veritabanı tablolarında özetleme ve gruplama işlemlerinde GROUP BY komutu kullanılır.


#25

SORU:

Özetleme işlevlerinden bahsediniz?


CEVAP:

Gruplama sorgularında sorgulamak istenen veri kümesi GROUP BY ifadesinden sonraki alanlara göre gruplanırken diğer alanlar üzerinde de özetleme işlemleri gerçekleştirilir. Sayısal alanlar için sayma, toplama, ortalama gibi matematiksel işlemler, metin türündeki alanlar için ise sayma, en büyük ve en küçük değerlerin alınması gibi işlemler özetleme işlevleri tarafından gerçekleştirilir.


#26

SORU:

SUM işlevini açıklayınız?


CEVAP:

Sayısal veriler için kullanılır. NULL olan verileri dikkate almaz. Distinct komutu ile benzersiz değerlerin toplanması sağlanabilir.


#27

SORU:

COUNT işlevini açıklayınız?


CEVAP:

Bir gruptaki kayıt sayısını hesaplarlar. COUNT Int (tamsayı) veri tipi ile veri döndürürken, COUNT_BIG BigInt(büyük tamsayı) veri tipinde sonuç döndürür.


#28

SORU:

Özetlenen değerlerin sınırlanmasını açıklayınız?


CEVAP:

Gruplama sorgularında özetlenen değerlerin belirli koşullara göre sınırlaması için HAVING komutu kullanılır. HAVING komutunun mantıksal işleme sırası Select ifadesinden önce Gruplama işlevinden sonra yer almasıdır. Dolayısıyla gruplama ve özetleme işlemi tamamlandıktan sonra koşullara uymayan satırlar seçilmez. WHERE komutu ise gruplama işleminden önce gerçekleştiği WHERE ile belirtilen koşullar Özetleme işlemlerine dahil edilmezler.


#29

SORU:

SQL işlevlerini açıklayınız?


CEVAP:

SQL sorgularında çeşitli hesaplama ve mantıksal işlemleri gerçekleştirebilmek için işlevler bulunmaktadır. MicrosoSQL Server Transact-SQL dili farklı işlemler için farklı türde işlevler sunmaktadır. Birçok programlama dilinde farklı yazım şekilleriyle benzer görevleri yerine getiren işlevler mevcuttur. Bu işlevlerin çalışma prensibinin kavranması ve ihtiyaç olduğunda ilgili yardım dosyalarına ulaşarak bu işlevleri etkin kullanmak bir veritabanı kullanıcısı ya da programcısı için oldukça önemlidir.


#30

SORU:

Mantıksal işlevler ne işe yarar?


CEVAP:

Mantıksal işlevler SELECT sorgularında alanların değerlerini belirli koşullara göre farklı değerlere dönüştürürler.


#31

SORU:

CHOOSE komutu hangi amaçla kullanılır?


CEVAP:

İndeks değeri içeren bir değerin tanımlanan sıralı listede eşleştirerek kar- şı gelen elemanı görüntüler. CHOOSE (İndeks,‘Seç1’,‘Seç2’, ……..,‘SeçN’) olarak yazılır.


#32

SORU:

IIF komutunun kullanımını açıklayınız?


CEVAP:

Mantıksal işlevler SELECT sorgularında alanların değerlerini belirli koşullara göre farklı değerlere dönüştürürler.


#33

SORU:

Sayısal işlevleri açıklayınız?


CEVAP:

Veritabanı tabloları üzerinde gerçekleştirilecek sorgulamalarda gerekli olabilecek hazır matematiksel işlevler bulunmaktadır. Bu işlevler veri tablosunun bir alanı için kullanılabileceği gibi sabit bir değer verilerek de hesaplama yaptırılabilir. Ancak unutulmaması gereken bir konu seçme sorgusunun alan listesinde yar alan bir işlem ya da değer seçimin tüm satırları için tekrar ettiğidir.


#34

SORU:

Metin işlevler ne işe yarar?


CEVAP:

Metin türündeki alanların ya da değerlerin işlenmesine yönelik kullanılır.


#35

SORU:

Tarih işlevlerini açıklayınız?


CEVAP:

Farklı kültürde aynı takvim kullanılsa da tarih bilgilerinin yazılması konusunda farklılıklar bulunmaktadır. Bu nedenle veritabanı yönetim sistemlerinde tarihin gösterilmesi, eklenmesi ile ilgili problemleri ortadan kaldırmak için çeşitli işlev ve formatlar bulunmaktadır. Bilgisayarlarda tarih ve saat bilgileri aslında bir sayı olarak saklanır. Bu sayının tamsayı kısmı gün, ondalıklı kısmı ise 24 saat 1 tamsayıya denk gelecek şekilde depolanmaktadır.


#36

SORU:

DATENAME komutunu açıklayınız?


CEVAP:

Tarih veri türündeki bir değerin bir bölümünü isim olarak geri döndürür. “DATENAME(DatePart, Tarih_verisi)” şeklinde yazılan işlev verilen tarih verisinin ilgili kısmının karşılığını İngilizce olarak döndürür. SELECT DATENAME(month, '2016/06/19') ya da SELECT DATENAME(m, '2016/06/19') şeklinde yazılan komut “June” metin verisini geri döndürür.


#37

SORU:

DATEPART komutunu açıklayınız?


CEVAP:

Tarih veri türündeki bir değerin istenen bölümünün elde edilmesini sağlar. İşlev “DATEPART(DatePart, Tarih_verisi)” şeklinde yazılır. Örneğin bir tarih bilgisinin saniye değerini elde etmek için SELECT DATENAME(s,'2016/06/19 12:10:30.123') komutu yazılarak 30 sayısının geri dönmesi sağlanabilir.


#38

SORU:

DATEFROMPARTS komutunu açıklayınız?


CEVAP:

Yıl, ay ve gün bilgilerinin sayısal olarak girildiği ve ilgili değerlerden tarih veri türünde değişken döndüren bir işlevdir. SELECT DATEFROMPARTS (2016, 6, 19) komutunun çalıştırılması ile “2016-06-19” şeklinde Date türünde veri döndürür. Bu işlev tarih verilerinin hatalı girilmesini engellemek için istemci yazılımlar tarafından kullanılabilmektedir.


#39

SORU:

DATEDIFF komutunu açıklayınız?


CEVAP:

İki tarih türündeki verinin arasındaki farkı istenilen tarih birimi olarak hesaplayan bir işlevdir. “DATEDIFF(DatePart, BaşlangıçTar, BitisTar)” olarak yazılır. Belirtilen iki tarih arasındaki farkı saat olarak hesaplanması istenen “SELECT DATEDIFF(hh, '2015/06/19 12:10','2016/06/19 00:10')” bu komut 8772 sonucunu verecektir. İki tarih arasında 8772 saat fark olduğu hesaplanmıştır. Bu komut Int türünde veri döndüren bir işlevdir. Ancak hesaplamalarda eğer Int veri türünden daha büyük bir dönüş olacaksa DATEDIFF_BIG işlevi aynı parametrelerle kullanılabilir. Bu işlev Bigint veri türünde bir sayı döndürür.


#40

SORU:

Alt sorguları açıklayınız?


CEVAP:

Alt sorgu (subquery) bir seçme sorgusunun bir parçasını oluşturan ve parantez içinde yazılmış sql seçme sorgusuna denilir. Konusu seçme sorguları olan bu ünitenin birçok kısmında veri kümesi kavramı kullanıldı. Veritabanı yönetim sisteminde depolanan verilerin kullanıcıların taleplerine göre hazırlanmalarında oldukça karmaşık seçme sorgularını oluşturmak gerekebilmektedir. Bu nedenle oluşturulacak seçme sorguları birden fazla veri kümesi hâlinde hazırlanarak birbirleriyle ilişkilendirmek, sınırlamak ya da birleştirmek suretiyle sistematik bir şekilde yapılandırılabilir. Her bir alt veri kümesine seçme sorgularında alt sorgu ismi verilmektedir. Alt sorgular karmaşık yapıdaki seçme sorgularının hazırlanmasında SQL komutlarının sağladığı esnekliklerden biridir. Alt sorgular başka bir sorgunun herhangi bir kısmında (seçim, tablo, sınırlayıcı) parantez içerisinde eklemlenen seçme sorgularıdır. Alt sorgular bir üst sorguya bir değer ya da bir tablo çıktısı verebilirler. Alt sorgu alanları ile üst sorgu alanlarının birbiri ile ilişkilendirmek yoluyla da seçme sorguları hazırlanabilmektedir.


#41

SORU:

Kısıtlayıcı alt sorgulama kullanımından bahsediniz?


CEVAP:

Alt sorgular tablo olarak kullanılabileceği gibi sınırlayıcı olarak da kullanılabilmektedir. WHERE komutu ile bir alandaki değerler başka bir sorgunun içerdiği değerlerle sınırlanabilir.


#42

SORU:

Alt ve üst sorgu ilişkilendirmesini açıklayınız?


CEVAP:

Alt sorgular bir üst sorgunun alanları ile sınırlanabilmektedir. Biraz karmaşık bir durum gibi görünse de veri kümesi mantığı ile değerlendirildiğinde bu yöntemle istenilen veri kümelerine etkili bir şekilde ulaşılabildiği görülecektir. Diğer bir yöntem ise EXISTS komutudur. EXISTS komutu sorguya eklenen alt sorgu ile verilerin ilişkilendirilmesini sağlar.


#43

SORU:

Alt sorgu kullanımını değerlendiriniz?


CEVAP:

Alt sorguların bir üst sorgunun tablosu, kısıtlayıcısı olabileceği gibi herhangi bir değer olarak da üst sorgu tarafından kullanılabilmektedir. Bu kullanıma örnek olması açısından aşağıdaki sorguyu dikkatle inceleyiniz. SELECT [Ürün No], Miktar, Miktar-(Select AVG(Miktar) FROM [Sipariş Ayrıntıları] WHERE [Ürün No]=a.[Ürün No] ) AS Fark FROM [Northwind].[dbo].[Sipariş Ayrıntıları] Komutlar incelendiğinde seçme alanında bir alt sorgunun yer aldığı görülmektedir. Bu sorgu [Sipariş Ayrıntıları] tablosunun her satırı için satışı yapılan ürünün, o ürün için yapılan tüm satışların ortalama miktardan ne kadar farklı olduğu hesaplanmaktadır. Sorguların satır bazlı oluşturulduğu düşünülürse her bir satıra gelindiğinde alt sorgu ilgili satırın ürün numarası ile bir ortalama hesabı yapıp geri dönecek ve aynı satırın miktar değerinden çıkaracaktır. Bir sorgunun seçim kısmında yer alan alt sorgular ciddi performans kaybına neden olabilmektedir. Her satır için çalıştırılan sorgunun gerçekleştirdiği işlem, üst sorgu ile ilişkili olması ve sorgu sonucu oluşacak satır sayısı oluşan performans kaybı ile doğrudan ilişkilidir.


#44

SORU:

SQL dili veritabanı sistemlerinin yönetilmesi için tasarlanmış ne dilidir?


CEVAP:

Bir bildirim dilidir.


#45

SORU:

Veritabanı yönetim sistemlerini kullanmamızın temel nedenlerinden biri de verinin farklı görünümlerini elde edebilmektir. Organizasyonlarda tüm sistem verilerini barındıran merkezi veritabanları organizasyonda farklı kademe ve görevlerdeki çalışanların ne ihtiyacını karşılamaktadır?


CEVAP:

Veri ihtiyacını karşılamaktadır.


#46

SORU:

SELECT komutunun temel yazım şekli verildikten sonra verinin sınırlanması, farklı tablolardan verilerin birleştirilmesi, veri kümelerinin birbiri ardı birleştirilmesi, iç-içe sorgular ünite içerisinde aktarılmıştır. SQL sorgu dili komutlarının öğrenilmesinde kullanıcıların bu komutları deneyimlemeleri neyin öğrenilmesi için oldukça önemlidir?


CEVAP:

Dilin öğrenilmesi için oldukça önemlidir.


#47

SORU:

SELECT ifadesi ilişkisel veritabanı yönetim sistemlerinde ne kayıtlarını getirmek için kullanılan komuttur?


CEVAP:

 Veri kayıtlarını getirmek için kullanılan komuttur.


#48

SORU:

Seçme ifadesinin mantıksal işleme sırasının bilinmesi kullanıcıların sorguları ne yapmasında yardımcı olmaktadır?


CEVAP:

Sorguları daha iyi tasarlamasında yardımcı olmaktadır?


#49

SORU:

Select komutu ile hedeflenen veri kümesini seçmek için komutun yapısında olduğu gibi yukarıdan aşağıya bir tasarım yapılması oldukça önemlidir. Aksi takdirde istenilmeyen sonuçlara ulaşılabilmektedir. Seçme sorgusunun evreni ne sonrasında belirtilen veri kaynakları tarafından oluşturulur?


CEVAP:

FROM sonrasında belirtilen veri kaynakları tarafından oluşturulur.


#50

SORU:

Select sorgusuyla elde edilen bir veri kümesinin yeni bir tablo olarak kaydedilmesi için FROM ifadesinden önce ne ifadesi yazılmalıdır?


CEVAP:

INTO tablo Adı ifadesi yazılmalıdır.


#51

SORU:

Seçme komutunun mantıksal işleme sırasının son iki adımı olan ORDER BY ve TOP ifadeleri elde edilen veri kümesinin kullanıcı ya da istemci yazılıma iletilmeden önce sıralanmasını sağlar. SELECT komutunun son kısmında yer alan ne ifadesinden sonra veri kümesinin istenilen alanlara göre sıralanması sağlanır?


CEVAP:

ORDER BY ifadesinden sonra veri kümesinin istenilen alanlara göre sıralanması sağlanır.


#52

SORU:

SQL komutlarının tek satır olarak yazılması zorunluluğu yoktur. Derleyici satır gözetmeksizin SELECT komutunun neyine göre ifadeleri dikkate alır?


CEVAP:

Yazım kuralına göre ifadeleri dikkate alır.


#53

SORU:

Veri sorgulamasında kayıtların belirli ölçütlere göre sınırlanması ya da diğer bir ifadeyle tablolar içinde aranması için ne ifadesi kullanılır?


CEVAP:

WHERE ifadesi kullanılır.


#54

SORU:

Koşul ifadeleri arasında AND ve OR ifadeleri kullanılabilmektedir. Mantıksal sınama ifadeleri olan bu ifadelerden AND birbirine bağlanan ifadelerin her ikisinin de gerçekleşmesini zorunlu kılar. OR ifadesi ise koşullardan en az birinin yerine getirilmesi durumunda ilgili satırı nereye dâhil eder?


CEVAP:

Veri kümesine dâhil eder.


#55

SORU:

İlişkisel veritabanı yönetim sistemlerinde gerçek dünya varlıklarının tablolar şekilde gösterimi söz konusudur. Bu yapılarda sistem, verileri hangi tablolar hâlinde organize edilir?


CEVAP:

Verileri birbirine bağlı çok sayıda tablolar hâlinde organize edilir.


#56

SORU:

Komutu sayesinde sadece iki değil çok sayıda tablo birbirine bağlanabilen, tabloları bir sorgu içerisinde birbiri ile bağlamanın en kolay ve yaygın yolu komutudur?


CEVAP:

JOIN komutudur.


#57

SORU:

Sorgu içerisinde tablo adlarından sonra AS ifadesi kullanılarak takma bir adla ifade edilebilir. Ne adları için de aynı durum söz konusudur?


CEVAP:

Alan adları için de aynı durum söz konusudur.


#58

SORU:

Çok sayıda tablonun birbirine bağlanması için farklı bir bağlantı türü yoktur. JOIN komutu aynı yapıyla kullanılır ancak ne kısmında birbiri ile ilişkili alanların doğru tarif edilmesi gerekir?


CEVAP:

ON kısmında birbiri ile ilişkili alanların doğru tarif edilmesi gerekir.


#59

SORU:

Birbiri ile aynı sayıda ve türde alanları olan veri kümelerinin alt alta birleştirilmesi, kesişim kümelerinin ve farklarının bulunması işlemine ne ad verilir?


CEVAP:

Veri kümesi birleştirme


#60

SORU:

Aylık toplam satış tutarları, satışı yapılan ürün sayıları, en çok satış yapan personel listeleri ve benzeri bilgilerin elde edilmesi için kullanılan SQL komutu nedir?


CEVAP:

SQL komutu GROUP BY’dır.


#61

SORU:

SQL sorgularında çeşitli hesaplama ve mantıksal işlemleri gerçekleştirebilmek için işlevler bulunmaktadır. Microsoft SQL Server Transact-SQL dili farklı işlemler için nasıl işlevler sunmaktadır?


CEVAP:

Farklı türde işlevler sunmaktadır.


#62

SORU:

Bir seçme sorgusunun bir parçasını oluşturan ve parantez içinde yazılmış SQL seçme sorgusuna ne denilir?


CEVAP:

Alt sorgu denir.


#63

SORU:

Alt sorgular tablo olarak kullanılabileceği gibi sınırlayıcı olarak da kullanılabilmektedir. WHERE komutu ile bir alandaki değerler başka bir sorgunun içerdiği nelerle sınırlanabilir?


CEVAP:

Değerlerle sınırlanabilir.