C#nedir?com Homepage
Forum Home Forum Home > Veritabanları > SQL Server
  New Posts New Posts RSS Feed - INTERSECT Kullanımı
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

INTERSECT Kullanımı

 Post Reply Post Reply
   

Author
Message
JustPlay View Drop Down
Groupie
Groupie


Joined: 01 Mart 2007
Location: Turkey
Status: Offline
Points: 88
Post Options Post Options   Thanks (0) Thanks(0)   Quote JustPlay Quote  Post ReplyReply Direct Link To This Post Topic: INTERSECT Kullanımı
    Posted: 31 Mayıs 2010 at 15:26
Merhaba Arkadaşlar;
Tabloda Kayıt Sorgularken Bir Problemim vardı.


örnk.
Tablodaki Değer:
  İnternetten Uygun Fiyata ve Güvenli
olsun
Client arama kutusuna
İnternetten Fiyata Güvenli
yazdığında ben bunu bulamıyordum..çünkü aranan kelimeyi bütün olarak arıyordum..
Sonra intersect i duydum..


Sanırım Bu komut u kullanırken arananı parçalıyor ve ayrı ayrı arayarak kesişim kümesini alıyoruz

select * from Products where ProductName like '%İnternetten%'
intersect
select * from
Products where ProductName like '%Fiyata%'
intersect
select * from
Products where ProductName like '%Güvenli%'


Ama burdaki Problem de şu , Client  arama kutusuna
 İnternetten Düşük Fiyata Güvenli
Yazarsa Düşük kelimesinin Sonuç  Kümesi olmadığından ,Genel Kesişim kümesi Boş oluyor ve geri değer gelmiyor..

Alternatif Fikri Olan Var mı Arkadaşlar Kolay Gelsin





Edited by JustPlay - 31 Mayıs 2010 at 15:29
Back to Top
funnycik View Drop Down
Groupie
Groupie


Joined: 12 Mayıs 2009
Status: Offline
Points: 41
Post Options Post Options   Thanks (0) Thanks(0)   Quote funnycik Quote  Post ReplyReply Direct Link To This Post Posted: 31 Mayıs 2010 at 17:11
Ben olsam şu şekilde yapardım. Gelen arama kelimesini boşluğa göre split edip bunu bir table a alır daha sonrada productname bu table ın içinde mi diye bakarım.

Aşağıdaki yazımda bu split işlemi için yazılmış bir function görebilirsin.

http://www.turgaysahtiyan.com/post/SQL-Server-da-Verilen-Stringi-Split-Yapc4b1p-Table-a-Aktarmak.aspx

Bu function ı kullanarak where bloğunda "where productname in @thistbl" şeklinde kullanabilirsin.

Edited by funnycik - 31 Mayıs 2010 at 17:11
Turgay Sahtiyan
SQL Server DBA
www.turgaysahtiyan.com
Back to Top
AmonRaBravo View Drop Down
Senior Member
Senior Member


Joined: 29 Kasım 2009
Status: Offline
Points: 645
Post Options Post Options   Thanks (0) Thanks(0)   Quote AmonRaBravo Quote  Post ReplyReply Direct Link To This Post Posted: 01 Haziran 2010 at 09:54
intersect yerine union kullanıp sonucu denermisiniz.


while(true)
{
    Console.WriteLine("AmonRa");
}

-------------
Fiat Bravo 1.4T-Jet 120HP
www.club-bravo.com


Back to Top
kkulaoglu View Drop Down
Moderator Group
Moderator Group


Joined: 05 Ağustos 2004
Status: Offline
Points: 221
Post Options Post Options   Thanks (0) Thanks(0)   Quote kkulaoglu Quote  Post ReplyReply Direct Link To This Post Posted: 01 Haziran 2010 at 11:11
Bu şekilde basit bir kullanımda yapabilirsin.parçalama sayına göre de where kısmını büyütürsün.

SELECT * FROM Products where ProductName like '%İnternetten%' OR ProductName like '%Fiyata%' OR ProductName like '%Güvenli%

Kubilay Kulaoglu
Csharpnedir?
www.kkulaoglu.com
Back to Top
 Post Reply Post Reply
  Share Topic   
   


Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 11.01
Copyright ©2001-2014 Web Wiz Ltd.