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

时间:2019-04-14 09:19:28

标签: sql oracle

我正在使用Oracle SQL。我有Table作为Test,列是A,B,C。列A中的值如下:

1000,
1000,
1000,
2000,
2000,
3000

结果将来自A列:

  A
1000
2000
3000

注意:除使用Distinct语法外。 从测试中选择唯一A;

2 个答案:

答案 0 :(得分:0)

使用GROUP BY

Select A from Test GROUP BY A

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

Oracle Demo

尽管,Group By是标准的sql,使用什么数据库都没有关系。

答案 1 :(得分: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