0

私はこれを持っています:

テーブルクライアント:

CLI_ID   STUDENT
   1     name1
   2     name2
   3     name3

大学:

UNIV_ID   CLI_ID    NAME
1...........1      harvard (2012)
2...........1      oxford(2013)
3...........2      yale

私は欲しい:

STUDENT    UNIVERSITY
name1      oxford
name2      yale

しかし、私は得る:

STUDENT    UNIVERSITY
name2      yale

私は最高の数字しか得ていません。最上位の id (最後の大学) を持つすべての学生ではありません

私はすでにこれを試しました:

**SELECT** C.cli_id, UNIV.UNIV_ID **FROM** cliente C

**INNER JOIN** UNIVERSITY UNIV **ON** C.Cli_id = UNIV.cli_id

**WHERE** UNIV_ID = ( **SELECT MAX** (UNIV_ID) **FROM** UNIVERSITY )

ありがとう

4

1 に答える 1

0

where各学生の最大値を取得するには、句で相関サブクエリを使用する必要があります。

SELECT C.cli_id, UNIV.UNIV_ID 
FROM cliente C INNER JOIN
     UNIVERSITY UNIV
     ON C.Cli_id = UNIV.cli_id
WHERE UNIV_ID = ( SELECT MAX(UNIV_ID) FROM UNIVERSITY u2 where u2.cli_id = c.cli_id)

すべての学生の最大値を取得していましたが、各学生の最大値のみが必要です。

于 2013-04-24T20:33:29.133 に答える