Php 如何从n个表中仅获取n条记录
我有3个不同内容的表,它们都有Php 如何从n个表中仅获取n条记录,php,mysql,sql,Php,Mysql,Sql,我有3个不同内容的表,它们都有datetime列 我想通过datetime DESC从3个表中的任意一个表中获取最后10条记录 可能表1中有5条记录,表2中有3条记录,表3中有2条记录 我如何在mysql中做到这一点。我应该使用Union 我尝试了这两种查询: 问题1: 问题2: ( SELECT * FROM table 1 LIMIT 10 ) UNION ( SELECT * FROM table 2 LIMIT 10 ) UNION ( SELECT * FROM table 3 LIM
datetime
列
我想通过datetime DESC从3个表中的任意一个表中获取最后10条记录
可能表1中有5条记录,表2中有3条记录,表3中有2条记录
我如何在mysql中做到这一点。我应该使用Union
我尝试了这两种查询:问题1: 问题2:
( SELECT * FROM table 1 LIMIT 10 )
UNION
( SELECT * FROM table 2 LIMIT 10 )
UNION
( SELECT * FROM table 3 LIMIT 10 )
但是这些查询返回30条记录。您必须单独写入,因为您需要单独的限制 (如果有相同的列) 更新:
//if we need 10 rows in the result
SELECT * FROM table1,table2,table3 limit 10
你试过什么了吗?我试过union,但它会分别返回每个表的最后10条记录。它返回30条记录。尝试
限制每个查询的结果数如何限制从3个表中获得10条记录?每人3.3英镑!!!!?不,限制每个查询,添加您在问题中尝试过的查询他说表具有“不同的内容”,联合要求每个连接的查询返回相同数量的列,并且每个列的类型相同。如果这3个表有不同的内容,而您选择了3个连接查询中的所有列,您认为这会起作用吗?他说内容不是列,他还说他在问题中尝试了联合:)
SELECT * FROM table1 limit 5
UNION ALL
SELECT * FROM table2 limit 3
UNION ALL
SELECT * FROM table3 limit 2
//if we need 10 rows in the result
SELECT * FROM table1,table2,table3 limit 10