Microsoft SQL server da,
Bir tabloda 100 column var, ve kayıtlarını birinin içinde 'MyPage.aspx' var, ben bu 'MyPage.aspx' olan Record u nasıl çekerim tablodan ?
Tablo adı:tbl
ColumnNames: ID, vchCol1,vchCol2,...,vchCol100
Tek tek OR yapmadan veya IN kullanmadan içinde "MyPage.aspx" olan satırı getirmenin yolu var mı?
hangi Col da olduğunu biliyormuyuz ?
IN olmayacak, OR da olmayacak
(Deveye sormuşlar Yukuş yukarımı, Yokuş Aşağımı diye, düzyola ne oldu demiş)
denemedim ama aşağıdakini vermişler (https://stackoverflow.com/questions/12550368/search-all-columns-of-a-table-using-a-single-where-condition-with-single-keyword)
SELECT * FROM `some_table` WHERE CONCAT_WS('|',`column1`,`column2`,`column3`,`column4`,`column64`) # single condition, many columns LIKE '%VT%'
IN olmayacak OR olmayacaktan kastım, vchCol1='MyPage.aspx' OR vchCol2=' MyPage.aspx' ... gibi tek tek kolon isimlerini yazmamak,
Hocam zaten sorun hangi kolon da olduğunu bilmek, hangi kolonda olduğunu bilmiyoruz. Ama şu kullanılabilir mi acaba?kolon isimleri vchCol1,vchCol2,...,vchCol100 gibi olduğundan bu kolon isimlerden yola çıkarak fonksiyon yazarak bulunabilir mi?
SELECT * FROM tbl WHERE vchCol1 LIKE 'MyPage.aspx'
AND vchCol1 LIKE 'MyPage.aspx'
AND vchCol2 LIKE 'MyPage.aspx'
....
AND vchCol100 LIKE 'MyPage.aspx'
şeklinde olabilir mi? Çalışır mı denemek lazım.
Hocam soru sormamdaki amaç şu, aradığım string in hangi kolon da olduğunu bilmiyorum ve kolon sayısı 100 tane olduğu durumda stringin olduğu Record nasıl elde edilebilir ?
@mir_as82 SQL hic kullanmadim sende calisirmi bilmiyorum pgsql de calisiyor,
SELECT * FROM table_name t WHERE t::text LIKE '%picproje%'
bir yasima daha girdim.
Alıntı yapılan: digiman - 25 Eylül 2017, 23:06:40
@mir_as82 SQL hic kullanmadim sende calisirmi bilmiyorum pgsql de calisiyor,
SELECT * FROM table_name t WHERE t::text LIKE '%picproje%'
bir yasima daha girdim.
Bu yöntem olmuyor hocam. Siz SQL server da denediniz mi hiç?
Ms sql bilmiyorum, postgresql de denedim kolon adi belirtmeden aradigim herhangi bir cumleyi buluyorum belki where kismindaki tanimlama mssql de farkli yaziliyordur, gerisi zaten standart sql sorgusu.
işinizi görür belki
http://vyaskn.tripod.com/search_all_columns_in_all_tables.htm