Birden çok tablo arasında GİBİ sözdizimi ve% joker% kullanarak arama nasıl

3 Cevap php

: Nasıl birden çok tablo arasında mysql ve benzeri / joker sözdizimi kullanabilirsiniz, o kadar basit olurdu

(SELECT * FROM `table1` WHERE `name` LIKE '%tom%') AND (SELECT * FROM `table2` WHERE `name` LIKE '%sam%')

Sadece düşünmeye, test değil.

3 Cevap

Lütfen tablolar aynı yapıları varsa, kullanabilirsiniz UNION:

SELECT * FROM `table1` WHERE `name` LIKE '%tom%' UNION SELECT * FROM `table2` WHERE `name` LIKE '%sam%'

UNION kullanın

(SELECT * FROM `table1` WHERE `name` LIKE '%tom%') UNION
 (SELECT * FROM `table2` WHERE `name` LIKE '%sam%')

Eğer UNION Aslında, eğer herhangi bir yinelenen satırlar kaldırılmış olabilir. Eğer tablo1 ve Table2% tom% eşleşen tüm satırlarda bir COUNT gerçekleştirmek istiyorsanız, diyelim ki (herhangi çiftleri korumak istiyorsanız ALL UNION kullanın.

(SELECT * FROM `table1` WHERE `name` LIKE '%tom%') UNION ALL (SELECT * FROM `table2` WHERE `name` LIKE '%tom%')