如何在Sqlite表中选择具有条件的行数限制的行?

时间:2016-08-24 08:12:40

标签: sql sqlite

我有一个Sqlite表(包含> 2500万行),如下所示:

rowid   overall    text
-----   -------    ----
 1         5     'text1'
 2         4     'text2'
 3         2     'text3'
 4         1     'text4'
 5         3     'text5'
 6         5     'text6'
...       ...      ...

overall列的值范围为1-5。现在,我希望从此表中选择overalltext,限制为100万行,但要确保在我的选择中,500,000行具有总体> 3,而其他500,000总体< 3.我该怎么做?

1 个答案:

答案 0 :(得分:3)

只需进行两次查询,然后combine them

SELECT * FROM (SELECT overall, text
               FROM MyTable
               WHERE overall > 3
               LIMIT 500000)
UNION ALL
SELECT * FROM (SELECT overall, text
               FROM MyTable
               WHERE overall < 3
               LIMIT 500000);