![](/img/trans.png)
[英]MySQL SELECT 8 unique users, then SELECT all records within those 8 users, then SELECT 4 most recent and available records of each 8 users?
[英]How to [MySQL] select users with records
我有這些表:
用戶 :
|user_id|user_name|
|-------|---------|
| 1 | John |
|-------|---------|
| 2 | Mark |
|-------|---------|
| 3 | Paul |
|-------|---------|
記錄 :
| record_id | user_id | records |
|-----------|---------|--------------|
| 1 | 3 | lorem ipsum |
|-----------|---------|--------------|
| 2 | 3 | dolor sit |
|-----------|---------|--------------|
| 3 | 3 | consectetur |
|-----------|---------|--------------|
| 4 | 1 | adipisicing |
|-----------|---------|--------------|
| 5 | 3 | eiusmod |
|-----------|---------|--------------|
| 6 | 1 | consectetur |
|-----------|---------|--------------|
我想要的是選擇具有記錄的用戶。 在這種情況下,只有約翰和保羅應該回來。
使用子查詢:
SELECT user_name FROM users WHERE user_id IN (SELECT DISTINCT user_id FROM records)
或使用內部聯接:
SELECT u.user_name FROM users u
INNER JOIN records r ON u.user_id=r.user_id
GROUP BY u.user_name
SELECT u.user_name, r.records FROM users as u, records as r where u.user_id = r.user_id
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.