【发布时间】:2012-09-27 19:16:09
【问题描述】:
我的问题很容易解释:
我需要一个为一列选择 DISTINCT 的查询,但我也需要选择其他列,通常没有 DISTINCT。谁能给我看一个这样的查询作为例子吗?
应该是通用查询!
谢谢。
$sql = 'SELECT DISTINCT user_id FROM ' . DONATION_SECURITY_TABLE . "
$sql_where
ORDER BY payment_status ASC, user_id ASC";
我还需要让这个查询选择其他东西,不仅仅是 user_id 不同,我还需要选择:donation_id、payment_status、pending_reason、txn_id、mc_gross 和 amount。
示例表:
donation_id user_id mc_gross payment_status txn_id (has UNIQUE index)
1 4 5.00 Completed g54g4
2 5 10.00 Pending 54yhh
3 4 6.00 Pending 54yhg
4 7 15.00 Completed fdhgf
查询应该返回: user_id 的 DISTINCT,distinct-ed user_id 的 mc_gross 的总和,最新的 payment_status(对于 user_id = 4 将返回 Pending)。
【问题讨论】:
-
请提供示例数据和所需的输出。
-
您能否向我们展示您拥有的数据以及您想要的查询输出的示例?
-
为什么不解释你的需求,而不是你需要查询做什么。我不认为 DISTINCT 是你的答案。听起来你想要更多的聚合组。
-
什么是“通用查询”?你用的是什么数据库?
-
你的问题没有意义。如果一个 user_id 有多个捐赠,会发生什么?如果输出中每个 user_id 只有一行,那么哪个捐赠行应该贡献donation_id、payment_status 等的值?