如何在不使用distinct的情况下显示唯一记录?

问题描述 投票:0回答:2

我正在使用Oracle SQL。我有Table作为测试,列是A,B,C。在A列中,值类似于:

1000,
1000,
1000,
2000,
2000,
3000

结果将来自A栏:

  A
1000
2000
3000

注意:除了使用Distinct语法外,从测试中选择Distinct A;

sql oracle
2个回答
0
投票

使用GROUP BY

Select A from Test GROUP BY A

Group by将指定列的所有相似值分组为一个值(组)。

Oracle Demo

虽然,Group By是一个标准的sql,你使用什么数据库并不重要。


0
投票

使用GROUP BY条款。

架构(MySQL v5.7)

CREATE TABLE A
(
  id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
  someData INT
);

INSERT INTO A VALUES (DEFAULT, 1000),
                     (DEFAULT, 1000),
                     (DEFAULT, 2000),
                     (DEFAULT, 1000),
                     (DEFAULT, 2000),
                     (DEFAULT, 3000),
                     (DEFAULT, 3000);

查询#1

SELECT someData
FROM A
GROUP BY someData;

产量

| someData |
| -------- |
| 1000     |
| 2000     |
| 3000     |

View on DB Fiddle

© www.soinside.com 2019 - 2024. All rights reserved.