SQL
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