我不完全确定如何简单地说出这个问题,所以我会提出重新命名问题的建议。我提前为这个问题看起来多么愚蠢而道歉,但我有一个脑筋屁的时刻,我无法绕过它。 我想到的表是由:
创建的CREATE TABLE STRUCTURES (X INT(4),Z INT(4),TYPE CHAR(1),SEED_ID BIGINT);
问题是,如何找到TYPE ='V'和SEED_ID相同的最大条目数?我们将这个号码称为MAX_TYPE_V。
为了澄清,我正在使用查询:
SELECT SEED_ID
FROM STRUCTURES
WHERE TYPE='V'
GROUP BY SEED_ID
HAVING COUNT(SEED_ID)=MAX_TYPE_V;
但我不知道如何找到MAX_TYPE_V插入上述查询,所以我的解决方法是尝试从1到2 ^ 31-1的MAX_TYPE_V查询,直到查询失败一些数字i,这意味着我-1是我的最大值,但坦率地说,这非常耗时且非常愚蠢。 我正在使用SQLite3,所以任何答案都应该解决MySQL语法问题。
答案 0 :(得分:1)
SELECT SEED_ID,
COUNT(*) AS cnt
FROM STRUCTURES
WHERE TYPE='V'
GROUP BY SEED_ID
ORDER BY COUNT(*) DESC
LIMIT 1