English 中文(简体)
SQL 对该限制的查询仅限记录的一个子集
原标题:SQL query to that limits only a subset of the records

s 例如,我有一个人表,有行 name gender(M/F) age

SQL 查询会是什么样子的返回 :

  • all female people
  • a maximum of 5 male people
  • people sorted by age

NB. 这是一个精心构思的例子,此外,欢迎针对Postgres的答复。

最佳回答
SELECT name, gender, age
  FROM ( SELECT name, gender, age
           FROM people
           WHERE gender =  F 
         UNION ALL
         ( SELECT name, gender, age
             FROM people
             WHERE gender =  M 
             LIMIT 5  
         )
       ) x
  ORDER BY age

请注意上面的解决方案没有选择任何特定的雄性。 如果您想要的话, 请对雄性子宫应用命令 。

在裁剪之前,按年龄顺序命令男性:

SELECT name, gender, age
  FROM ( SELECT name, gender, age
               ,ROW_NUMBER() OVER (PARTITION BY gender ORDER BY age) gender_count
           FROM people
        ) x
   WHERE gender =  F 
      OR gender_count <= 5

BTW, 我发现“ 性别” 通常用于语法参考。 在这种情况下, “ 性别” 本来是我本来会使用的术语 。

问题回答

暂无回答




相关问题
摘录数据

我如何将Excel板的数据输入我的Django应用? I m将PosgreSQL数据库作为数据库。

Postgres dump of only parts of tables for a dev snapshot

On production our database is a few hundred gigabytes in size. For development and testing, we need to create snapshots of this database that are functionally equivalent, but which are only 10 or 20 ...

How to join attributes in sql select statement?

I want to join few attributes in select statement as one for example select id, (name + + surname + + age) as info from users this doesn t work, how to do it? I m using postgreSQL.

What text encoding to use?

I need to setup my PostgreSQL DB s text encoding to handle non-American English characters that you d find showing up in languages such as German, Spanish, and French. What character encoding should ...

SQL LIKE condition to check for integer?

I am using a set of SQL LIKE conditions to go through the alphabet and list all items beginning with the appropriate letter, e.g. to get all books where the title starts with the letter "A": SELECT * ...

热门标签