SQL LIKE-IS NULL-NOTNULL-ORDER BY

SQL LIKE-IS NULL-NOTNULL-ORDER BY SQL MONTH, SQL YEAR, SQL GETDATE KULLANIMI


SQL LIKE Kullanımı (Benzerlik)

% bundan sonra yazılanlar fark etmez. önce yazılır ise fark eder

a% ---------- a ile başlasın

%a% -------- içinde a geçenler

--'_' tek Karakteri ifade eder hangi karakterin olduğu fark etmez.

Daha önceki dersimizde de biraz değinmiştik benzeyen kelimeleri getiriyor.

örnek verelim..




select * from Products where ProductName LIKE 'A%' 

Aile başlayanları gösterelim

SQL LIKE Kullanımı



SQL LIKE ile içinde geçen harfler yani direk isimde ola bilir benzerini veya aynı olanı getirsin demek ister isek ;
select * from Customers where ContactName LIKE '%Maria%' 


SQL LIKE




/*
SORGU YAZARKEN İZLENECEK YÖNTEM
1. Hangi komutu kullanacağına karar ver.(SELECT)
2. Hangi tablo ile çalışacağına karar ver
3. Hangi kolonları görüntüleyeceği ne karar ver.
4. Varsa kriterini(Koşulunu) belirle.
*/

Harf aralıklarını nasıl bula biliriz SQL de ? 
C ile başlayan ücüncü harfi O olan ürün bilgilerini getirin.  dersek SQL de komut şu şekilde olacaktır.


SQL LIKE 


NOT harf aralıklarını örnek olarak şu kadar harf aralığında olsun demek isterseniz SQL de onuda şu şekilde belirtmelisiniz.

yukarıda olan tablodan örnek verelim.

select * from Products where ProductName LIKE 'C_O______'

Şeklinde kullanmamız gerekiyordu neden "_"karakter belirtiyor.

c ile başlayan 3.harfi a ile o arasında olan ürünleri getir dersek.

select * from Products where ProductName LIKE 'C_[a-o]%'

SQL LIKE HARF ARASI GETİR

Pekı SQL de bunları getirme demiş olursak onuda şu komut ile yapmamız gerekiyor.


SELECT * FROM Products WHERE ProductName Like 'c_[^o]%'


Eğer son kelimeyi baza alır isek  

select * from Products where ProductName LIKE 'C_O%ade'

yapardık ve ekrana şöyle bir sonuç çıkardı.



SQL LIKE SON HARFİ

SQL IS NULL KULLANIMI

CUSTOMERS tablosunda bulunan region değerleri NULL olanları getir demek istersek

SELECT * FROM Customers c WHERE c.Region is null  

Bu komutta ola bilirdi fark etmiyor.

SELECT * FROM Customers WHERE Region is null

SQL IS NULL


Peki NULL olanları getirdik de diğerlerini getirmek istersek eğer.

SELECT * FROM Customers c WHERE c.Region is not null
SQL IS NOT NULL


SQL ORDER BY  Kullanımı 

ASC (A den Z ye) --Ascending artarak
DESC (z den a ya) -- Descending Azalarak

SELECT * FROM Products p ORDER BY p.ProductName DESC

ASC DESC SQL
SQL de Fiyata Göre sıralama yapmak istersek eğer.
SELECT p.ProductName,p.UnitPrice,p.UnitsInStock FROM Products p order by p.UnitPrice DESC

SQL ORDER BY DESC

Tarihler arası bir aramaya yapalım ve sıralayalım demek istersek eğer SQL de .


'1996-01-01' '1996-10-31' Tarihleri arasını getir demek istersek.

SELECT * FROM Orders where OrderDate BETWEEN '1996-01-01' AND '1996-10-31' ORDER BY OrderDate DESC

ikinci komut


SELECT o.OrderID,o.OrderDate,o.ShipCity,o.ShipCountry FROM Orders o 
WHERE o.OrderDate > '01-01-1996' AND o.OrderDate < '10-31-1996'
ORDER BY 2 DESC

diğer bir komut ise 1996 yılını getirmektedir.

SELECT o.OrderID,o.OrderDate,o.ShipCity,o.ShipCountry FROM Orders o
WHERE YEAR(o.OrderDate) = 1996 ORDER BY 2 DESC 

SQL ORDER BY DESC BETWEEN

SQL YEAR SQL  MONTH DAY SQL GETDATE
-->> YEAR(Tarih) --> Girilen tarihin yıl bilgisini verir.
-->> MONTH(Tarih) --> Girilen tarihin ay bilgisini verir.
-->> DAY(Tarih) --> Girilen tarihin gün bilgisini verir.
-->> GETDATE() --> Şuanki tarihi ve saati verir.

Eğer 10 cu aydan küçük olanları getir demek istersek SQL de

SELECT o.OrderID,o.OrderDate,o.ShipCity,o.ShipCountry FROM Orders o 
WHERE YEAR(o.OrderDate) = 1996 AND MONTH(o.OrderDate) < 10 ORDER BY 2 DESC


SQL ORDER BY MONTH YEAR



--Doğum günü bugün olan çalışanların(Employees) AdSoyad(FirstName + LastName), DoğumTarihi(BirthDate) ve Ünvan(Title) bilgisini getiren sorgu

SELECT e.FirstName + ' ' + e.LastName as 'AdSoyad',e.BirthDate,e.Title FROM Employees e
WHERE MONTH(e.BirthDate) = MONTH(GETDATE()) AND DAY(e.BirthDate) = DAY(GETDATE())

ise şubat  ayında doğanları getir demek istersek eğer

SQL ayları getirme





















Yorumlar

Yorum Gönder

Bu blogdaki popüler yayınlar

En İyi 20 Hacker Duvar Kağıtları