我有以下SQL语句:SQL获得第一个匹配的结果
SELECT ID, NAME FROM myTable
WHERE
ID LIKE 'R43%' OR
ID LIKE 'D32%' OR
ID LIKE 'F22%'
和ID可能有值,如:
ID
____
R431
R431
R432
R434
D322
D322
D327
F226
F227
如何将我只得到了第一个ID记录相匹配?就像上面的值一样,我只会得到(R431,R431,D322,D322,F226)的记录。我抓取的表中的ID值是连续的(所以R432将始终出现在表格中的R431之后)。
变化的使用Oracle分析功能'where'条款。 – 2012-06-25 19:38:54
第一个ID匹配是什么意思? –
NAME是否与该ID绑定,因此所有ID为R431的记录都会具有相同的NAME?这是一个微妙的差异,但在订购和过滤时很重要。我认为答案在于使用MAX和Group By来获取正确的字段,但没有关于表格中确切架构的更多信息,很难猜测要将group.order定义为什么。在你有限的样本中,DISTINCT可以工作,但我不认为这就是你要求的。 – David