
SQL Sorguları ve Örnekleri
SQL Sorgu Örnekleri
SQL SELECT, SQL WHERE, Sql Sorguları Ve Örnekleri ile beraber, SQL DISTINCT, SQL AND OR, SQL ORDER BY, SQL INSERT INTO, SQL UPDATE, SQL DELETE, SQL INJECTION, SQL SELECT TOP, SQL LIKE, SQL WILDCARDS SQL IN, SQL BETWEEN, SQL ALIASES, SQL JOINS, SQL INNER JOIN, SQL SELECT INTO, SQL CREATE, SQL AVG, SQL COUNT,SQL MAX, SQL MIN, SQL LEN, SQL ROUND kullanımları ile ilgili örnekler
Tablo Adı: “musteriler”
musteriNo | ad | soyad | dogumTarihi | sehir | cinsiyet | puan |
1 | İlkay | Genç | 1996-11-03 00:00:00.000 | İstanbul | E | 75 |
2 | Abdullah | Kahrıman | 1976-02-19 00:00:00.000 | Samsun | E | 55 |
3 | Ayşe | Demir | 1966-06-10 00:00:00.000 | Ordu | K | 20 |
4 | Sedat | Ekmel | 1992-02-18 00:00:00.000 | İzmir | E | 40 |
5 | Gülşen | Üstün | 1955-12-30 00:00:00.000 | İzmir | K | 84 |
SQL SELECT
Müşteriler tablosunda müşterilerin adını ve soyadını listelemek için;
SELECT ad, soyad FROM musteriler
SQL SELECT DISTINCT
Tabloda tekrarlayan verileri göstermek yerine Distinct ile farklı değerleri listeleyebiliriz. Müşteriler tablosundaki şehirlerin listesini tekrar etmeden almak için;
SELECT DISTINCT sehir FROM musteriler
SQL WHERE
Müşteriler tablosunda listeleme yaparken şehiri İzmir olan müşterileri listelemek için;
SELECT * FROM musteriler WHERE sehir='İzmir'
Ya da cinsiyeti erkek olanları listelemek için;
SELECT * FROM musteriler WHERE cinsiyet='E'
Where ile kullabileceğimiz operatörlerin listesi aşağıdaki gibidir;
Operator | Açıklama |
---|---|
= | Eşit |
<> | EşitDeğil. Not: Bazı versiyonlarda “!=” kullanılabilir. |
> | Büyüktür |
< | Küçüktür. |
>= | Büyük Eşittir |
<= | Küçük Eşittir |
BETWEEN | Arasında |
LIKE | Örüntü arama |
IN | Bir sütun için birden çok olası değerleri belirtmek için |
SQL AND – OR Kullanımı
SQL’de And operatörü 1.Koşulun ve 2.Koşulun doğru olması durumunda çalışacaktır.
Müşteri tablosunda cinsiyeti “K” ve şehiri “Ordu” olanları listelemek için;
SELECT *FROM musteri WHERE sehir='Ordu'AND cinsiyet='K'
Müşteri tablosunda şehri İstanbul yada İzmir olanları listelemek için;
SELECT *FROM musteri WHERE sehir='İstanbul' OR sehir='İzmir'
Müşteri tablosunda Cinsiyeti ‘E’ olan ve Şehri “İstanbul” ya da “İzmir” olanları listelemek için;
SELECT * FROM musteriler WHERE cinsiyet='E' and (sehir="İstanbul" or sehir="İzmir")
INSERT INTO Kullanımı
Veritabanındaki tablolara kayıt etmek için kullanılır.
Müşteri tablosuna bir kayıt eklemek için;
INSERT INTO musteri(ad, soyad, dtarih, sehir, cinsiyet, puan) VALUES ('Ali','Şahin','2000-10-12','Burdur','E',68)
SQL UPDATE Kullanımı
Veritabanındaki kayıtlar üzerinde güncelleme yapmak için kullanılır.
Müşteri tablosundaki müşteri numarası 3 olan kayıdın puanını 100 yapalım.
UPDATE musteriler SET puan=100 WHERE musterino=3
SQL DELETE Kullanımı
Veritabanındaki kayıtı veya kayıtları silmek için kullanılır.
Müşteri tablosundaki müşteri numarası 5 olan kayıtı silme için;
DELETE FROM musteriler WHERE musterino=4
Müşteri tablosundaki tüm kayıtları silmek için;
DELETE * FROM musteriler
SQL LIKE Kullanımı
Belirtilen bir değeri verilerde aramak için kullanılır.
Müşteriler tablosunda şehri S ile başlayan kayıtları listeleyelim.
SELECT * FROM musteriler WHERE sehir LIKE 'S%'
Şehri r ile biten kayıtları listelemek için;
SELECT * FROM musteriler WHERE sehir LIKE '%R'
Şehrin içerisinde “tan” bulunan kayıtları listelemek için;
SELECT * FROM musteriler WHERE sehir LIKE '%tan%'
SQL SELECT TOP Kullanımı
Belirtilen bir sayıda kayıtı görüntelemek için kullanılır.
Müşteriler tablosundaki ilk 5 kaydı listeleyebilmek için;
SELECT TOP 5 * FROM musteriler
SQL YER TUTUCU KARAKTERLER
Müşteriler tablosundaki isimi İ ile başlayıp ondan sonraki 2. karakteri herhangi bir harf olan ve A ile devam eden ve ondan sonraki harfi belli olmayan kayıtları listeleyelim.
SELECT * FROM musteriler WHERE ad LIKE 'İ__A_'
SQL IN Kullanımı
IN operatörü, WHERE ile kullanılan birden çok değer belirlemenizi sağlar.
Müşteri tablosunda Şehri ‘İstanbul’ ve ‘Samsun’ olan kayıtları listeleyelim.
SELECT * FROM musteriler WHERE sehir IN ('İstanbul','Samsun')
SQL BETWEEN KULLANIMI
Between belirli koşullar arasındaki kayıtları listelemek için kullanılır. Sayı, metin ya da tarih aralığınıda verebiliriz.
Müşteriler tablosunda doğum tarihi ’01/01/1996′ ile ’01/01/2006′ tarihleri arasındaki kişileri listelemek için;
SELECT * FROM musteriler WHERE dtarih BETWEEN '01/01/1996' AND '01/01/2006'
Müşteriler tablosunda puanı 60 ile 84 arasındaki kişileri listelemek için;
SELECT * FROM musteriler WHERE puan BETWEEN 60 AND 84
Müşteriler tablosunda adı C ile E arasındaki kişileri listelemek için;
SELECT * FROM musteriler WHERE ad BETWEEN 'C' AND 'E'
SQL ALIASES Kullanımı
SQL tablosunda bulunan sütunlara sorguda gösterilen geçici bir ad vermek için kullanılır
SELECT ad AS ADI, soyad SOYADI, dtarih AS [DOĞUM TARİHİ] FROM musteriler
SQL JOIN Kullanımı
Orders ve Customers tabloları aşağıdaki gibidir;
OrderID | CustomerID | OrderDate |
---|---|---|
10308 | 2 | 1996-09-18 |
10309 | 37 | 1996-09-19 |
10310 | 77 | 1996-09-20 |
CustomerID | CustomerName | ContactName | Country |
---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mexico |
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate FROM Orders INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
Yukarıdaki sorguyu çalıştırdıktan sonra;
OrderID | CustomerName | OrderDate |
---|---|---|
10308 | Ana Trujillo Emparedados y helados | 9/18/1996 |
10365 | Antonio Moreno Taquería | 11/27/1996 |
10383 | Around the Horn | 12/16/1996 |
10355 | Around the Horn | 11/15/1996 |
10278 | Berglunds snabbköp | 8/12/1996 |
SQL LEFT JOIN Kullanımı
SELECT Customers.CustomerName, Orders.OrderID FROM Customers LEFT JOIN Orders ON Customers.CustomerID=Orders.CustomerID ORDER BY Customers.CustomerName
SQL RIGHT JOIN Kullanımı
SELECT Orders.OrderID, Employees.FirstName FROM Orders RIGHT JOIN Employees ON Orders.EmployeeID=Employees.EmployeeID ORDER BY Orders.OrderID
SQL SELECT INTO Kullanımı
SELECT INTO bir tablodan veriyi seçer ve yeni bir tabloya ekler.
Müşteriler tablosunun MusterilerBackup isimli yedeğini oluştabiliriz.
SELECT * INTO MusterilerBackup FROM musteriler
Sadece şehri “İstanbul” olan kayıtları ekleyebilmek için;
SELECT * INTO MusterilerBackup FROM musteriler WHERE sehir='İstanbul'
SQL CREATE Kullanımı
Yeni bir veritabanı oluşturmak için;
SQL CREATE DATABASE dbname
SQL CREATE TABLE Kullanımı
Yeni tablo oluşturabilmek için kullanılır.
CREATE TABLE musteriler ( musteriNo int, ad varchar(20), soyad varchar(20), dogumTarihi datetime, cinsiyet varchar(1), sehir varchar(20), puan int );
SQL AVG Kullanımı
AVG() kullanımı bir sütunun ortalama değerini döndürür.
Müşteri tablosundaki puan ortalamasını bulmak için;
SELECT AVG(puan) FROM musteriler
SQL COUNT Kullanımı
Count() belirtilen koşulda eşleşen satırın sayısını döndürür
Müşteriler tablosundan toplam kayıt sayısını almak için;
SELECT COUNT(*) FROM musteriler;
SQL ROUND Kullanımı
Ondalık sayıyı yuvarlamak için kullanılır.
SELECT urunadi, ROUND(fiyat,0) AS YuvarlanmisFiyat FROM urunler
SQL LEN() KULLANIMI
LEN () fonskiyonu, bir metinin karakter değerinin uzunluğunu döndürür.
Müşteriler tablosunda ad alanının yanına soyad uzunluklarını yazdırmak için;
SELECT ad,LEN(soyad) as soyaduzunlugu FROM musteriler;
SQL NOW() Kullanımı
NOW() fonksiyonu, sistemin tarih ve saatini döndürür.
Aşağıdaki SQL deyimi “Products” tablosundan bugün için ürün adını ve fiyatını seçelim.
SELECT ProductName, Price, Now() AS PerDate FROM Products;
SQL MAX Kullanımı
MAX() fonksiyonu, seçilen sütunun en büyük değerini döndürür.
Müşteri tablosundan en yüksek puanı görüntülemek için;
Select MAX(puan) AS EnyuksekPuan FROM musteriler
SQL MIN Kullanımı
MIN() fonksiyonu, seçilen sütunun en küçük değerini döndürür.
Müşteri tablosundan en küçük puanı görüntülemek için;
Select MIN(puan) AS EndusukPuan FROM musteriler
Daha fazla sorgu için; www.ilkaygenc.com.tr/s?=sql
Faydalı bilgiler için teşekküler
Efsane bi yazı olmuş örneklerde efsane sınava giricek arkadaşlar için çok güzel ve faydalı tavsiye ederim