PHP mysql使用关键字搜索多个表
我的数据库中有三个表:
messagestopics
comments
这些表中的每个表都有两个字段,分别称为“内容”和“标题”。我希望能够在我的sql语句中使用“赞”来查看“ messages.content”,“
messages.title”,“ topics.content”,“ topics.title”,“ comments.content”和“
comments”。标题”使用关键字。
到目前为止,我的查询仅能从一张表中找到结果:
mysql_query("SELECT * FROM messages WHERE content LIKE '%" . $keyword . "%'
OR title LIKE '%" . $keyword ."%'");
我还想知道,一旦从多个表中获得结果,如何分辨什么表中的结果?
任何帮助将不胜感激!
回答:
$query = "(SELECT content, title, 'msg' as type FROM messages WHERE content LIKE '%" . $keyword . "%' OR title LIKE '%" . $keyword ."%')
UNION
(SELECT content, title, 'topic' as type FROM topics WHERE content LIKE '%" .
$keyword . "%' OR title LIKE '%" . $keyword ."%')
UNION
(SELECT content, title, 'comment' as type FROM comments WHERE content LIKE '%" .
$keyword . "%' OR title LIKE '%" . $keyword ."%')";
mysql_query($query);
因此,您将从这三个表中得到所有结果,并且可以通过查看其type
值来确定哪个行来自哪个表。
以上是 PHP mysql使用关键字搜索多个表 的全部内容, 来源链接: utcz.com/qa/412254.html