【发布时间】:2013-03-10 10:28:11
【问题描述】:
进行查询以从多个表中选择行...然后从那里检索必要的信息(即headline)
$sql="(SELECT `headline`,`date` FROM `arts`)
UNION
(SELECT `headline`,`date` FROM `lead_news`)
UNION
(SELECT `headline`,`date` FROM `opinion_analysis`)
UNION
(SELECT `headline`,`date` FROM `politics`)
UNION
(SELECT `headline`,`date` FROM `top_news`)
UNION
(SELECT `headline`,`date` FROM `lifestyle`)
ORDER BY `date` DESC LIMIT $limit ";
$result=mysql_query($sql);
while($row=mysql_fetch_assoc($result)){
echo trim(htmlspecialchars_decode($row['headline']));
}
我还需要找出每个$row 的table 名称。我找到了一个解决方案here,它建议查询是:
"SELECT *, table_name as source FROM table_name" 以便$row['source'] 可以返回表名。
但我想知道是否有任何关联数组键可以从 $row 或 mysql 中的任何内置函数中检索名称?
编辑:我用以下方式编写了SELECT 命令:
SELECT `headline`,`date`, `arts` as `source` FROM `arts`
并得到错误:“字段列表”中的未知列“艺术”。 这里采用什么方式?
【问题讨论】:
-
投票结束作为 How to find the table name which the image randomly selected from 的副本。解决方案就是解决方案。我看不出你还想实现什么。
-
让我访问建议的链接
-
看起来更像是错误的结构化数据库。不要使用已弃用的 mysql 调用。
-
@WigglerJtag,哪个已弃用?
-
如果两个表中有一行,应该显示哪个表名?