Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从多个同名行中获取结果_Php_Html_Mysql - Fatal编程技术网

Php 从多个同名行中获取结果

Php 从多个同名行中获取结果,php,html,mysql,Php,Html,Mysql,我有一些不同内容的表格。我想要完成的是在一个div中显示这些表中的20个最新条目 这是我的第一张桌子——audio1 userID folder title date 另外两个文件夹看起来完全一样 音频2 userID folder title date 音频3 userID folder title date 我怎样才能同时从所有表中获取数据,并使用PHP将它们逐个返回到按日期排序的div中?您的SQL查询将由3部分组成。当不需要连接关系而只需要从多个表返回行时,联合查询将来自多个结构通

我有一些不同内容的表格。我想要完成的是在一个div中显示这些表中的20个最新条目

这是我的第一张桌子——audio1

userID folder title date
另外两个文件夹看起来完全一样

音频2

userID folder title date
音频3

userID folder title date

我怎样才能同时从所有表中获取数据,并使用PHP将它们逐个返回到按日期排序的div中?

您的SQL查询将由3部分组成。当不需要连接关系而只需要从多个表返回行时,联合查询将来自多个结构通常相似的表的结果连接在一起

$sql = "SELECT userID, folder, title, date FROM audio1
  UNION ALL
  SELECT userID, folder, title, date FROM audio2
  UNION ALL
  SELECT userID, folder, title, date FROM audio3
  LIMIT 20;";

$result = mysql_query($sql);
if ($result) {
  // Fetch results and echo them into a list.
}

您需要一个列来进行订购。这可能是约会,但你可能有其他计划。在限制20之前添加ORDER BY子句。

您的SQL查询将由3部分组成。当不需要连接关系而只需要从多个表返回行时,联合查询将来自多个结构通常相似的表的结果连接在一起

$sql = "SELECT userID, folder, title, date FROM audio1
  UNION ALL
  SELECT userID, folder, title, date FROM audio2
  UNION ALL
  SELECT userID, folder, title, date FROM audio3
  LIMIT 20;";

$result = mysql_query($sql);
if ($result) {
  // Fetch results and echo them into a list.
}

您需要一个列来进行订购。这可能是约会,但你可能有其他计划。在限制20之前添加ORDER BY子句。

您可以尝试union,也可以尝试join

SELECT 
  COALESCE(t1.userID, t2.userID, t3.userID) as userID 
           , t1.folder, t1.title, t1.date
           , t2.folder, t2.title, t2.date  
           , t3.folder, t3.title, t3.date  
FROM table1 t1
FULL OUTER JOIN table2 t2 ON (t1.userID = t2.userID)
FULL OUTER JOIN table3 t3 ON (t1.userID = t3.userID)  

这是一只完全不同的野兽,所以我想我会给你这个选择。

你可以尝试联盟,也可以尝试加入

SELECT 
  COALESCE(t1.userID, t2.userID, t3.userID) as userID 
           , t1.folder, t1.title, t1.date
           , t2.folder, t2.title, t2.date  
           , t3.folder, t3.title, t3.date  
FROM table1 t1
FULL OUTER JOIN table2 t2 ON (t1.userID = t2.userID)
FULL OUTER JOIN table3 t3 ON (t1.userID = t3.userID)  

这是一种完全不同的野兽,所以我想我会给你这个选项。

看来你的数据库设置是错误的,你必须只有一个名为“audio”的表,其中一个字段表示你当前在表名中使用的数字。

看来你的数据库设置是错误的,你必须只有一个名为“audio”的表,其中一个字段表示您当前在表名中使用的数字。

您在查询、HTML布局或php方面有问题吗?请具体说明你的问题。html不是问题,只是对数据库的查询php也很好。我只是不知道如何一次从三个表中获取信息:你对查询、html布局或php有问题吗?请具体说明你的问题。html不是问题,只是数据库的查询php也很好。我只是不知道如何同时从三个表中获取信息:匿名投票人是否愿意解释他们的反对意见?某个人准时出现,每个人都投了反对票。。。我没有点名,但这种模式在PHP&MySQL中有很多先例:@Michael:那么,如果我注意到投票在13:57:41时被否决,理论上,我可以在同一时间寻找关于这个问题的其他活动吗-这是一个很好的科学方法,是的匿名的反对者愿意解释他们的反对吗?某个人准时出现,每个人都会得到反对票。。。我没有点名,但这种模式在PHP&MySQL中有很多先例:@Michael:那么,如果我注意到投票在13:57:41时被否决,理论上,我可以在同一时间寻找关于这个问题的其他活动吗-这是一个很好的科学方法,是的