首先,我是新来的,刚刚学习sql,所以请耐心听我说。
我有一个简单的问题。假设我有一个名为voting的表,其中包含以下列:
id, token(int), candidate(int), rank(int)。。我想要执行如下查询:
SELECT *
FROM voting
WHERE rank > t1.rank
AND token = t1.token。。t1在哪里
SELECT rank,token
FROM voting
WHERE candidate = $mycandidate我如何在一条语句中使用别名或任何最简单的方法来做这件事?
请注意,创建的最终表格可能具有与我指定的候选人不同的行,即排名,令牌变量最初是根据候选人选择的,但一旦选择,它们可能包含任何候选值。
发布于 2012-03-11 04:49:18
我相信,像这样的事情应该可以做到:
select
v1.*
from
voting v1 inner join
voting v2
on v1.token = v2.token and
v2.candidate = $mycandidate and
v1.rank > v2.rank将更改的SELECT *编辑为SELECT v1.*
https://stackoverflow.com/questions/9649997
复制相似问题