[英]Can the query results form three different tables go into one array?
我试图拉出每个表中的所有记录,这些记录在Games.date_added中的值大于输入日期。 试图拉出所有新记录。
我可以在一个查询中完成所有操作吗? 或者只是将date_added字段添加到每个表并分别查询每个表更容易?
游戏
ID
添加日期
GAME_NAME
发布日期
game_category
游戏类型
游戏机奖杯
trophies_id
GAME_NAME
tr_name tr_description
tr_color
tr_ach_valueTROPHY_TOTALS
trophy_totals_id
GAME_NAME
bronze_ttl
silver_ttl
gold_ttl
plat_ttl
hidden_ttl
首先,将TROPHIES
和TROPHY_TOTALS
外键字段TROPHY_TOTALS
为id
会更好。 game_id
而不是game_name
。
这就是说,我将专注于你当前的表结构。
SELECT <wanted fields>
FROM GAMES
LEFT JOIN TROPHIES USING (game_name)
LEFT JOIN TROPHY_TOTALS USING (game_name)
WHERE date_added > <given>
如果你做3个单独的查询,会更好更清楚。 每一个都会给你不同的行数。 由glglgl给出的使用2个连接的查询将导致来自games表的相乘行。 这是因为tropies和tropy总计可以包含具有相同游戏的多个记录。 当然,如果game_name是一个唯一的列,那么加入就行了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.