http://www.codeproject.com/Tips/635166/SQL-Column-Values-as-Comma-Separated-String bir buna bak hocam istersen. Bu aralar fazla yogunum. Unuttugum seyler oluyorsa affola. DM vs atın.

2 tablo olmasın istedim aslında çok kayıt olduğunda inner Join'ler, group by max'lar devreye girecek yoksa, gerçi bu defada LIKE operatrünü kullanıyorum yağmurdan kaçıp doluya tutulmak gibi. DrKill mssql kullanıyorum sanırım REGEXP komutu burada yok. 2 farklı tabloda bitir diyorsun sanırım üstteki açıklamam yüzünden yle yapmadım. sLeymN normalde bu işleri dediğin gibi yapardım bir çok kişi gibi bu defa farklılık olsun istedim performans olarak fazladan inner Joinler olmasın diye. HolyOne şeyh senin verdiğin kategori id değerlerini ikinci tabloda tutan insanlar için tek sorguda '2,4,5' şeklinde çıktı alabilmek için yapılan bir fonksyon benim işlemin bir ncesinde yapılan işlem yani. teşekkürler yinede. işlemi virgül koyarak LIKE operatoru ile halletttim ikinci bir tablodan kaçmak adına. Ek bir sutun açarak çzdüm ama performans açısından test etmedim bir milyon kayıt üzerinde deneme yapmak lazım aslında byle gelişi güzel doğru değil :)

en basiti insert Cem values('google','1,2,3') insert Cem values('yandex','2') insert Cem values('bing','1,3') insert Cem values('altavista','2,3') insert Cem values('giz','22,3,222') yerine insert Cem values('google',',1,2,3,') insert Cem values('yandex','2') insert Cem values('bing',',1,3,') insert Cem values('altavista',',2,3,') insert Cem values('giz',',22,3,222,') yapmak olacaktir. simdi like ile '%,2,%' gibi ararsin Bu aralar fazla yogunum. Unuttugum seyler oluyorsa affola. DM vs atın.

merhaba şyle bir tablo var elimizde içersinde sadece 2 olanları getir nasıl deriz? create table dbo. Cem ( adi varchar(50), cat nvarchar(20) ) insert Cem values('google','1,2,3') insert Cem values('yandex','2') insert Cem values('bing','1,3') insert Cem values('altavista','2,3') insert Cem values('giz','22,3,222') select from cem where cat in('2') sadece içersinde 2 olan yandex kaydını getiriyor. Like yapıncada 'giz' isimli kayıt ile çakışıyor.

evet o şekilde de oluyor ama araya ek kayıt eklemeden nasıl çzülür ona baktım yoksa sorgu esnasında dinamik olarakta virgül eklenebilir

hocam tablo yapın aslında çok yanlış, cat dediğin alan büyük ihtimal ile categori olanı. tablonu 2 ye blmeni ve ilk tabloda id ve adı yani 1 google 2 yandex gibi ikinci tabloda da id ve cat id tutman daha sağlıklı. Cehennemin dibine kadar yolum var daha.. || Nasılsa her yalnız kendine sürgündür Asmera unutma.

Aynen, tablo yapısı yanlış, çok kayıtta baya sürünecektir ama şyle yapabilirsn, bu spyi ekle ve rnekteki gibi kullan ALTER FUNCTION . ( @RowData NVARCHAR , @SplitOn NVARCHAR(5) ) RETURNS @ReturnValue TABLE ( Data NVARCHAR ) AS BEGIN DECLARE @Counter INT SET @Counter = 1 WHILE ( CHARINDEX > 0 ) BEGIN INSERT INTO @ReturnValue SELECT Data = LTRIM(RTRIM(SUBSTRING(@RowData, 1, CHARINDEX - 1))) SET @RowData = SUBSTRING(@RowData, CHARINDEX + 1, LEN SET @Counter = @Counter + 1 END INSERT INTO @ReturnValue SELECT Data = LTRIM(RTRIM RETURN END; GO DECLARE @str VARCHAR SET @str = '11111,22222,33333' SELECT FROM dbo. Split HolyOne tarafından 14/May/14 15:08 tarihinde düzenlenmiştir Nush ile uslanmayanı etmeli tekdir, Tekdir ile uslanmayanın hakkı ktektir!

"B. genre_id REGEXP ' '";ben bu şekilde kontrol ettirmiştim. genre_id içersinde 2,5,8 12,15,85 22,68,85 gibi kayıtlar olsun kontrolü şyle yapıyor rnek 2 için diyorum 2, => var mı? ,2, => var mı? ,2 => var mı? İmza...

1-)Byle kayıtları tutmak için aslında Document tabanlı Nosql veritabanları daha uygun gibi. Tercihini zel sebeplerden dolayı sql destekli bir RDBMS'den yana kullanacaksan eğer; 2-)Regexp ile SQL 'de aratabilirsin. Hangi sql engine kullanıyorsun bilmiyorum aslında. Her SQL engine regexp ile aramaya destek vermez. MYSQL destek veriyor şu an. Mysql için rnek vereyim : SELECT 'Baaan' REGEXP '^Ba n'; gibi.. http://dev.mysql.com/doc/refman/5.1/en/regexp.html 3-)LIKE gibi bir komutla arayabilirsin 4-)Her Cem satırının bir PK'sı olduğunu varsayarsak, her CEM tablosunun satırını referans alan bir CATS tablosu oluşturursun ve bu CATS tablosundan, CEM tablosunun Primary Keylerini gstererek categorileri insert edersin. Zaten aslında yapman gereken verimli yol bu. Ornek Tablo CEM CEMtoCAT DrKill tarafından 14/May/14 12:55 tarihinde düzenlenmiştir Bu imzayı her grdüğünüzde 4gb kotanızın 0,00000358559191226959228515625 azalmaktadır. Bilerek ve istenerek bu imza yapılmıştır. Amaç kotanızı smürmektir