Etiket arşivi: where

Mysql AND(ve) ve OR(veya) Komutu

Veri tabanındaki verilere sorgular uygularken ve , veya gibi komutları kullanmamız gerekebilir. AND komutu “ve” anlamına gelmektedir, OR komutu “veya” anlamına gelmektedir.
Aynı anda iki olayın da gerçekleşmesini istiyorsak veya olayların aynı anda gerçekleşmesini istiyorsak; AND komutunu kullanmalıyız. Örneğin kitap tablosunda satışta olan ve onaylı olan kitapları göstermek isteyelim;
SELECT * FROM kitap WHERE onay=’1′ AND satis_durumu=’1′;

Onay 1 olan ve satis_durumu 1 olan verileri getir demiş olduk.

Or komutu ise veya manasına gelmektedir. satışta olan veya fiyatı 15 TL olan kitapları getirmek isteyelim.


SELECT * FROM kitap WHERE fiyat=’15’ OR satis_durumu=’1′;

fiyat 15 olan veya satis_durumu 1 olan verileri getir dedik. Tablomuzda kayıtlı olan kitabın fiyatı 15 Tl olsun ve satis_durumu 0 olsun; yinede sorgumuz bu veri satırını bize getirir. Çünkü OR (veya) komutunu kullandık.

Mysql İç İçe Select

Bazen bir sorgunun içinde başka bir sorgu yer alabilir, bu gibi durumlarda iç içe select yapısını kullanabiliriz.
Örnek olarak;

Kitap durum tablomuz olsun ve dışarıdaki kitaplarımız bulmak isteyelim. Dışarıdaki kitapların numaralarını ödünç tablosundan çekecek bir sorgu yazalım.

SELECT kitapno From odunc WHERE geldimi=0;

Bunu , kitaplar tablosundan karşılık gelen kitap numaralarını çekecek şekilde IN() komutu ile kullanalım.

SELECT * FROM kitap WHERE kitapno IN(SELECT kitapno FROM odunc WHERE geldimi='0');