Arkadaşlar Merhaba.
Bir Konuda yardımınıza ihtiyacım var. Yardımcı olabilirseniz sevinirim.
Database Interbase 6 Kullanıyorum. İstediğim Stored Procedure ' de
Sql sorgusunun içinde "if" nasıl kullanabilirim.
Select Stok_Kod From Stok
Where Stok_Frm = "INTEL"
if (Kdv_Orn <> "") then And Stk_Kdv = :Kdv_Orn
Into :Stk_Kod
Yukarıdaki Sql sorgusu çalışmıyor. Ben Nasıl Sql sorgusunda "if" koşulunu kullanabilirim. (Stored Procedure de)
Teşekkürler, iyi çalışmalar ...
Sp de Sql cümlesinde if Kullanımı
burda hem konu anlatımı hem de if örneği var :
http://www.delphiturkiye.com/index.php?page=trigger.htm
Kolay gelsin.
http://www.delphiturkiye.com/index.php?page=trigger.htm
Kolay gelsin.
Mustafa Bey Problemimi anlayamadınız sanırım. Gönderdiğiniz Linki daha önce okumuştum. Ama Benim problemimin çözümü yok orada. "if" kullanımın örneği var ama sql cümlesinin içinde yok. Diğer türlü "if" kullanımını yapıyorum.
Select Stok_Kod From Stok
Where Stok_Frm = "INTEL"
if (Kdv_Orn <> "") then And Stk_Kdv = :Kdv_Orn
Into :Stk_Kod
Benim istediğim Sql sorgusunun içinde olması. Sanırım böyle birşey İnterbase de yok...
İlginiz den dolayı teşekkürler...
İyi çalışmalar...
Select Stok_Kod From Stok
Where Stok_Frm = "INTEL"
if (Kdv_Orn <> "") then And Stk_Kdv = :Kdv_Orn
Into :Stk_Kod
Benim istediğim Sql sorgusunun içinde olması. Sanırım böyle birşey İnterbase de yok...
İlginiz den dolayı teşekkürler...
İyi çalışmalar...
Şöyle bir çözüm yolu olur diyebilirsiniz..
if (Kdv_Orn <> "") then
begin
Select Stok_Kod From Stok
Where Stok_Frm = "INTEL"
And Stk_Kdv = :Kdv_Orn
Into :Stk_Kod
end else
begin
Select Stok_Kod From Stok
Where Stok_Frm = "INTEL"
Into :Stk_Kod
end
Yalnız benim Sql sorgusunun içinde kullanacağım if koşulu bir tane değil en az 9-10 tane. Bunun için yukarıdaki gibi, hepsi (9-10) ve kombinasyonları için yapmam olmaz.

if (Kdv_Orn <> "") then
begin
Select Stok_Kod From Stok
Where Stok_Frm = "INTEL"
And Stk_Kdv = :Kdv_Orn
Into :Stk_Kod
end else
begin
Select Stok_Kod From Stok
Where Stok_Frm = "INTEL"
Into :Stk_Kod
end
Yalnız benim Sql sorgusunun içinde kullanacağım if koşulu bir tane değil en az 9-10 tane. Bunun için yukarıdaki gibi, hepsi (9-10) ve kombinasyonları için yapmam olmaz.



Kod: Tümünü seç
case when
(alan1>alan2) then
alan1-alan2
else
alan2-alan1
end
ÜŞENME,ERTELEME,VAZGEÇME
bilgi olsun diye soyluyorum....
sql cümleleri çinde kullanılan if ile sql cümlelerini birbirinden ayıran bir SP icinde kullanılan if farklıdır... birincisine yani sql cümlesi içinde kullanıla if expression denir ki bunu her veritabanı desteklemeyebilir. ikincisine ise if statement denir ve aynen delphi de yaradığı işe yarar ve bildiğim kadarı SP yazılabilen her veritabanı destekliyor...
sql cümleleri çinde kullanılan if ile sql cümlelerini birbirinden ayıran bir SP icinde kullanılan if farklıdır... birincisine yani sql cümlesi içinde kullanıla if expression denir ki bunu her veritabanı desteklemeyebilir. ikincisine ise if statement denir ve aynen delphi de yaradığı işe yarar ve bildiğim kadarı SP yazılabilen her veritabanı destekliyor...
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

-
- Kıdemli Üye
- Mesajlar: 395
- Kayıt: 22 Tem 2004 09:15
- Konum: İzmir
- İletişim:
Selam,
Yukarıdaki gibi case kullanmadan da yazılabilir bu query.
Kolay gelsin,
Kod: Tümünü seç
SELECT Stok_Kod FROM Stok
WHERE Stok_Frm = "INTEL" AND (Kdv_Orn = "" OR Stk_Kdv = :Kdv_Orn) INTO :Stk_Kod
Kolay gelsin,
Doğan Zorlu, İzmir
------------------------
"Bu Kitap'ı sana yalnız şunun için indirdik: Hakkında ayrılığa düştükleri şeyi onlara iyice açıklayasın ve Kitap, iman eden bir topluluk için kılavuz ve rahmet olsun." (NAHL 64)
------------------------
"Bu Kitap'ı sana yalnız şunun için indirdik: Hakkında ayrılığa düştükleri şeyi onlara iyice açıklayasın ve Kitap, iman eden bir topluluk için kılavuz ve rahmet olsun." (NAHL 64)