【发布时间】:2013-10-07 15:47:53
【问题描述】:
我正在处理一个大约有 50 列和 100,000 行的表。
一列,称为 TypeID,有 10 个可能的值:
1 到 10 个。
TypeID=1的记录可以有10000条,TypeID=2的记录可以有10000条,以此类推。
我想运行一个 SELECT 语句,它将返回每个不同 TypeID 的 1 条记录。
类似
TypeID JobID Language BillingDt etc
------------------------------------------------
1 123 EN 20130103 etc
2 541 FR 20120228 etc
3 133 FR 20110916 etc
4 532 SP 20130822 etc
5 980 EN 20120714 etc
6 189 EN 20131009 etc
7 980 SP 20131227 etc
8 855 EN 20111228 etc
9 035 JP 20130615 etc
10 103 EN 20100218 etc
我试过了:
SELECT DISTINCT TypeID, JobID, Language, BillingDt, etc
但这会产生多个具有相同值的 TypeID 行。我得到一大堆“4”、“10”等等。
这是我正在使用的 ORACLE 数据库。
任何建议将不胜感激;谢谢!
【问题讨论】:
-
如果是Oracle,为什么要
MySQL标签? -
但是 哪个 每个不同的 TypeID 有 1 条记录?
-
@raina77ow,我的错,这个建议弹出了 MySQL,我一定是误读并点击了它。 GROUP BY 给我错误。我将进一步调查它,看看问题出在哪里。可能我的某个地方的格式很差。
-
@Moob,没关系。任何行都可以,我只需要采样。
标签: sql oracle greatest-n-per-group