2010-01-06 11 views
8

Başka bir tablodaki bir sütunun dışındaki bir grup değer için Tam metin araması yapmam gerekiyor. MATCH(), AGAINST() parçasında bir değer gerektirdiğinden, basit bir şekilde: "AŞAĞIDAKİ AŞAĞIDA, AĞAÇ ANLAYIŞIYLA (b.şikaydı)" (a.addisi) "," KARŞILIK için yanlış argümanlar "ile başarısız olur.MySQL Tam metin arama sütun değerine mi?

Şimdi, bir ad listesi için sorgulamak üzere bir komut dosyası yazabileceğimi biliyorum ve sonra bunları arayın, ancak bunu bir kerede halledebilecek daha karmaşık bir sorguyu daha çok çalışıyorum. Hem de hızlı olması gerekmiyor.

Fikirler?

sayesinde

cevap

3

Maalesef http://dev.mysql.com/doc/refman/5.6/en/fulltext-search.html diyor ki:

arama dizesi sorgu değerlendirme esnasında sabit olan bir dize değeri olmalıdır. Bu, örneğin, bir tablo sütunu belirler, çünkü her satır için farklılık gösterebilir.

Arama çözümünüz olarak MySQL'in FULLTEXT dizinini kullanırsanız, kalıpları tek tek aramak zorundasınız gibi görünüyor. Bir Ters Endeksi olduğunu açıklayan gibi Aklıma

tek alternatif birçok desen ararken izin vermek. Bu, gerçek bir tam metin arama teknolojisi kadar esnek veya ölçeklenebilir olmamasına rağmen.

"" http://www.slideshare.net/billkarwin/practical-full-text-search-with-my-sql

+1

Evet, bunu gördüm ama http://dev.mysql.com/tech-resources/articles/full-text-revealed.html diyor sunumum KARŞI için bir argüman bakın() sabit bir dizge olmalı. "Bu endişelenecek bir şey değil. Henüz el kitabını güncellemedik, henüz MySQL Sürüm 5 kullanıyorsanız, AGAINST() argümanının bir değişken veya parametre olabileceğini göstermedik." Birilerinin daha karmaşık bir sql yaklaşımı (görüş, prosedür veya bir şey) kullanarak bazı tavsiyelerde bulunmasını umuyordum. Aslında, neyi yüklediğim temelde tablo b'nin metin sütununda oluşan tablodan bir terim terimleri dizini oluşturmaktır. –

+1

Bu makale Mayıs 2004'ten beri, ancak hala * kılavuzu güncellemediniz mi ?! Bu acıklı! –

+0

Mysql için tüm metinlerin önemi hakkında bir şey söyler, sanırım. Son zamanlarda kendimi Squid okuyarak buldum, ama bu bir projenin bir yan yönü ve gerçekten sistemik değişiklikler yapma niyetim yoktu. –