1
は私が各カテゴリSQLの動的カウントを選択
create table foo(name text, category text);
name | category
------+----------
aaa | cat1
bbb | cat1
ccc | cat2
ddd | cat2
eee | cat2
からN行を選択したいのですが、そこからテーブルfoo
を持っている今、私はカテゴリ
category | count
----------+-------
cat2 | 2
cat1 | 1
結果は3行であるべきでは
name
------
ccc
ddd
aaa
-- wrong, not taking counts into account
with t as (select * from (values ('cat1', 1), ('cat2', 2)) as
t(category, count)) select name from foo, t where foo.category = t.category;
name
------
aaa
bbb
ccc
ddd
eee
(タイは、ランダムに、または任意の順序で解決することができます)私は複数のクエリでこれを行うことができますが、私は何かが非常に明白でなくなっていると思うし、選択は単一のクエリで行うことができます。