Sql sorgusunda Alan boş ise diğer alanın değerini getir.

MS SQL Server veritabanı ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Sql sorgusunda Alan boş ise diğer alanın değerini getir.

Mesaj gönderen conari »

Kod: Tümünü seç

select No,aciklama  from tablom 
tablo dan bu alanları getiriyorum, Ama eğer Açıklama boş ise şunu getir diyebilirmiyim Select komutunda.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

işini case when then ile görebilirsin. Örnek bir kod vereyim:

Kod: Tümünü seç

SELECT Ad,(CASE WHEN Aciklama IS NULL THEN 'boş' ELSE Aciklama END) AS Aciklama FROM Tablom
'boş' dediğim yere istersen bir tablondaki bir diğer alanı da çağırabilirsin.
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

@Naile teşekkür hiç aklıma gelmemişti.

Kod: Tümünü seç

SELECT   TEKLIF.stok_kodu,(CASE WHEN EKALAN IS NULL THEN STOK.STOK_ADI ELSE EKALAN END) AS EKALAN FROM TEKLIF, STOK
WHERE TEKLIF.STOK_KODU=STOK.STOK_KODU
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Mrb; pratik başka bir yolda isNull veya Coalesce kullanmaktır. Örnek:

Kod: Tümünü seç

SELECT   TEKLIF.stok_kodu, isNULL(EKALAN,STOK.STOK_ADI) AS EKALAN FROM TEKLIF, STOK
WHERE TEKLIF.STOK_KODU=STOK.STOK_KODU
veya

Kod: Tümünü seç

SELECT   TEKLIF.stok_kodu, Coalesce(EKALAN,STOK.STOK_ADI) AS EKALAN FROM TEKLIF, STOK
WHERE TEKLIF.STOK_KODU=STOK.STOK_KODU
İyi çalışmalar.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Cevapla