Dapatkan semua data pertama kunci rujukan dalam SQL
P粉041856955
P粉041856955 2023-09-11 21:36:51
0
2
498

Saya mempunyai dua jadual bernama "Pengguna" dan "Pembayaran". Dalam Pembayaran, terdapat kunci asing pada jadual pengguna. Ini adalah rekod jadual pembayaran.

从付款中选择 id,User_id;

id ID_pengguna
1 1
2 1
3 2
4 3
5 2

Tetapi hasil jangkaan saya adalah ini.

id ID_pengguna
1 1
3 2
4 3

Saya hanya mahukan data pertama setiap User_id dalam SQL.

P粉041856955
P粉041856955

membalas semua(2)
P粉510127741

Anda boleh menggunakan klausa GROUP BY pada lajur User_id.

P粉262073176

Cuba ini...

SELECT p1.id, p1.user_id
FROM payment p1
WHERE p1.id IN (SELECT MIN(p2.id) FROM payment p2 GROUP BY p2.user_id)

Andaikan, "first" merujuk kepada nilai minimum id dalam jadual pembayaran pengguna itu, dan anda juga memerlukan butiran lanjut dalam jadual pembayaran atau melakukan operasi lain padanya...

Jika anda hanya mahukan ID pembayaran MIN, lakukan sahaja ini:

SELECT MIN(id), user_id FROM payment GROUP BY user_id
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan