2

私は次の表を持っています:

FKID1   FKID2   A    
3   40297    3 
3   40297    5 
3   40325    9 
3   40325    8 
3   40325    1 
3   40348    1  
3   40391    2 
3   40392    7 
3   40501    5 
3   40501    4 

次のテーブルを生成するためのクエリが必要です。

FKID1   FKID2   A    
3   40297    5 
3   40325    9  
3   40348    1  
3   40391    2 
3   40392    7 
3   40501    5

したがって、重複から1つのFKID2のみを選択し、max(A)が関連付けられているFKID2を選択します。

できませんでしたので、よろしくお願いします。

4

2 に答える 2

1
select FKID1, FKID2, max(a)
from yourTable
group by FKID1, FKID2

グループ化する必要があり、集計関数を適用します。詳細については、こちらをご覧ください。また、この条項に関するその他のチュートリアルがインターネットにあります

于 2012-09-26T16:50:21.313 に答える
1

を使用するときは、句AGGREGATE FUNCTIONSを追加することを忘れないでください。そうしないと、値が 1 つだけになることに注意してください。GROUP BYこれを試して、

SELECT FKID1, FKID2, MAX(A) maxValue
FROM tableName
GROUP BY FKID1, FKID2

FKID1結果に表示したくない場合は、

SELECT FKID2, MAX(A) maxValue
FROM tableName
GROUP BY  FKID2
于 2012-09-26T16:50:27.873 に答える