我有3个表格 - business
,products
和subproducts
。
这里的表格结构为http://sqlfiddle.com/#!9/f3342/1。
我需要传递string
进行搜索。它必须搜索所有三个表(所有列)并从id
表返回business
。 bid
是business id (id)
表的products
,而pid
是product id (id)
表的sub_products
。
然后我需要按照business
,products
和subproducts
等表格的顺序对结果进行排序。
我怎么能做到这一切?
由于
答案 0 :(得分:0)
如果它不必只是一个查询就很容易
SELECT id
FROM business
WHERE Concat(name, '', category, '', s_desc, '' , f_desc, '', address1, '', views) like '%test%'
这将搜索business
表中包含'test'字符串的指定列。您可以扩展此查询以包括所有相关列以及要搜索的不同表。只需将您的搜索字符串从php传递到该查询,它将返回id。
P.S。不要将您的输入直接传递给您的查询(进程并首先将其转义),因为它将对sql注入开放。
我希望这会有所帮助。