我有以下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