MySQL FIND_IN_SET ve IN deyimi

Posted by Zafer | Posted in MySQL | Posted on 27-09-2010

MySQL ‘ de in deyimi ile aşağıdaki örnekteki gibi bir sorun yaşanmakta

– Doğru sonucu veren örnek

select * from tabloAdı where alanAdı in (1,2,3,4,5);

– Bu sorgu ise sadece ilk kayıtı yani ’1′ e karşılık gelen sonucu göstermektedir.

declare @deger varchar(10);

set @deger=’1,2,3,4,5′;

select * from tabloAdı where alanAdı in (@deger);

– FIND_IN_SET deyimi ile ise bu sorunu çözebiliriz.

declare @deger varchar(10);

set @deger=’1,2,3,4,5′;

select * from tabloAdı where FIND_IN_SET (alanAdı,@deger);

Post a comment