我有两个表:玩具和游戏。如何在两个不同的表上添加两个计数(*)结果?
+--------------------+------------------+
| Field | Type |
+--------------------+------------------+
| toy_id | int(10) unsigned |
| little_kid_id | int(10) unsigned |
+--------------------+------------------+
+--------------------+------------------+
| Field | Type |
+--------------------+------------------+
| game_id | int(10) unsigned |
| little_kid1 | int(10) unsigned |
| little_kid2 | int(10) unsigned |
| little_kid3 | int(10) unsigned |
+--------------------+------------------+
小孩子可以有多个玩具。 一个小孩可以一次参加多个游戏。
我想要一个查询,它会给我一个little_kid参与的玩具+游戏总数。
基本上,我想这两个查询的总和:
SELECT COUNT(*) FROM Toys WHERE little_kid_id = 900; SELECT COUNT(*) from Games WHERE little_kid1 = 900 OR little_kid2 = 900 OR little_kid3 = 900;
是否有可能得到这个在一个SQL查询?显然,我可以通过编程来总结它们,但这不太理想。
(我意识到人为的例子,使架构看ineffecient让我们假设我们不能改变的模式。)
干杯!我知道它必须是那样的简单。 – Runcible 2009-05-05 18:53:27
我们怎样才能得到它没有子查询 – 2016-11-08 11:18:02