CREATE TABLE test(
id integer,
content text,
number integer
)
INSERT INTO test(id,content,number) VALUES(1,'a'::text, 5);
INSERT INTO test(id,content,number) VALUES(2,'b'::text, 2);
INSERT INTO test(id,content,number) VALUES(3,'c'::text, 2);
INSERT INTO test(id,content,number) VALUES(4,'d'::text, 3);
INSERT INTO test(id,content,number) VALUES(5,'e'::text, 1);
INSERT INTO test(id,content,number) VALUES(6,'f'::text, 3);
INSERT INTO test(id,content,number) VALUES(7,'g'::text, 3);
INSERT INTO test(id,content,number) VALUES(8,'h'::text, 2);
INSERT INTO test(id,content,number) VALUES(9,'i'::text, 4);
我想要的是,将数字列和排序结果分组为id
列作为desc,像这样;无法顺序结果时正确分组
| id | number
----------------
| 9 | 4
| 8 | 2
| 7 | 3
| 5 | 1
这里有多个外观像2,3和1的所有号码进行分组,看到只有一次,还下令用id
柱递减。
我试过这个查询,但它不适合我;
SELECT DISTINCT ON (number) number, id FROM test ORDER BY number,id DESC LIMIT 4
酷.......感谢 – sommeguyy