SQL

Hasibe Zafer
4 min readJun 7, 2019

--

Merhaba, tüm örnekleri aşağıdaki link üzerinden deneyebilirsiniz.
https://www.w3schools.com/sql/sql_ref_keywords.asp

SQL, veritabanındaki verileri depolamak, işlemek ve almak için standart bir dildir.

Data definition language (DDL): Verileri tanımlamak, değiştirmek veya bırakmak için kullanılır.

Data manipulation language (DML): Verileri okumak ve değiştirmek için kullanılır.

SELECT

SELECT * FROM Customers;

SELECT CustomerName,CustomerID FROM Customers;

SELECT CustomerName,CustomerID FROM Customers where CustomerName=”Around the Horn” ;

DISTINCT

Tekrarlı verileri almak istemiyorsak

SELECT DISTINCT Country FROM Customers

LIMIT

Dönen satır sayısını sınırlar.
SELECT * from Customers Limit 5

ORDER BY

order by .. asc

Country göre küçükten büyüğe sıralamasını istiyorsak (asc)
SELECT DISTINCT Country FROM Customers order by Country asc

Country göre küçükten büyüğe sıralamasını istiyorsak (desc)

SELECT DISTINCT Country FROM Customers order by Country desc

Country Venezuela olmayanları getirmek istersek:
SELECT DISTINCT Country FROM Customers where Country != “Venezuela” order by Country desc

NOT IN

Listede olmamasını istediğimiz bilgileri çıkarmak için diğer yöntem:

SELECT DISTINCT Country FROM Customers where Country not in (‘Venezuela’,’USA’,’UK’) order by Country desc

İki kolona göre sıralama : Ülke,şehir

SELECT * FROM Customers where Country not in ( ‘Venezuela’,’USA’)
order by Country,City asc

OR

SELECT * FROM Customers where CustomerID=1 or CustomerID=10

IN

SELECT * FROM Customers where CustomerID in (2,3,12)

in içerisine yeni bir query alır. Örneğin CustomerID çift olanları alalım.

SELECT * FROM Customers where CustomerID in (select CustomerID from Customers where CustomerID % 2 =0 )

Aynı sonucu şu şekilde de alabiliriz.

SELECT * FROM Customers where CustomerID % 2 =0

COUNT

Tablomuzdaki tüm verilerin sayısını bulmak istersek:
SELECT count(*) FROM Customers

Country Germany olan verilerimizin sayılarını bulmak istersek:
SELECT count(*) FROM Customers where Country = ‘Germany’

SELECT count() from Customers where CustomerID in (select customerID from Customers where Country=’Germany’)

**İki tabloda ortak kolonlar var ise IN ile sorgu yazarak işlem yapabiliriz. Örneğin Customer ve Orders tablosunda CustomerID kolonuna göre customerName döndürelim

select CustomerName from Customers where CustomerID in (SELECT CustomerId FROM Orders where CustomerId)

  • **Sipariş veren kişi sayısı :
    SELECT count() FROM Customers Where CustomerID in (select CustomerID from Orders)
  • **Sipariş vermeyen kişilerin isimleri
    SELECT CustomerName FROM Customers Where CustomerID not in (select CustomerID from Orders)

** Sipariş veren şehirlerin ismi küçükten büyüğe
SELECT distinct City FROM Customers Where CustomerID in (select CustomerID from Orders) order by City asc

CREATE TABLE

Yeni bir tablo oluşturmak için Create Table komutu kullanılır. İçerisine PersonId, FirstName ve Age adında sütunlar ekledik.

CREATE TABLE Savsat
(
PersonID int,
FirstName varchar(30),
Age int
);

INSERT INTO

Tablomuza veri eklemek için Insert Into komutu kullanılır.

INSERT INTO Savsat
(PersonID,FirstName,Age)
VALUES (1,’Ayşan’,30)

UPDATE

UPDATE Customers
SET ContactName=’Alfred Schmidt’, City=’Frankfurt’
WHERE CustomerID=1;

DELETE

DELETE FROM Customers WHERE CustomerName=’Alfreds Futterkiste’;

EXAMPLE

UPDATE INSTRUCTOR
SET LASTNAME = ‘YORULMAZ’ , FIRSTNAME = ‘HASIBE’
WHERE FIRSTNAME = ‘MERVE’ LIMIT 1

--

--

No responses yet