【发布时间】:2012-02-16 03:27:16
【问题描述】:
好的,这有点复杂,因为我的表没有被引用或组合或相互匹配,所以我不能使用 JOIN。我正在构建一个搜索表单,它可以简单地匹配多个表中的搜索关键字。
我遇到的问题是我必须根据结果来自哪个表来生成新闻项目链接,但我找不到钩子。 MySql union 工作完美,只是我无法检查数据是来自表 a 还是表 b。
here is short version
SELECT i.title,i.category FROM table_a WHERE REGEXP 'news'
UNION
SELECT i.title,i.category FROM table_b WHERE REGEXP 'news'
现在,我的表 A 有 36 行,表 B 有 34 行,另一个区别是表 A 有我想检查的行名称 extra_field 并基于该切换我的链接。
查询后的php切换可能类似于
foreach($rows as $row) :
if($row->extra_field):
$link = 'index.php?".$row->category.$row->title".html'
else:
$link = 'index.php?".$row->title".html'
endif;
endforeach;
如果该行存在,有没有办法检查我的 UNION sql?我知道如何检查行是否存在,但如何在 UNION 中进行检查?
请帮忙。谢谢!
【问题讨论】: