我有三張桌子。如何修復多個查詢連接中的重複行?
|-----------------|
| user_id | Name |
|-----------------|
| 1 | Raj |
|-----------------|
| 2 | Khaj |
|-----------------|
| 3 |Khujli |
|-----------------|
|--------------------------------------|
| post_id | Title | Desc |
|--------------------------------------|
| 1 | test1 | hello |
|--------------------------------------|
| 2 | test 2 | Hello World |
|--------------------------------------|
|--------------------------------------------------|
| comment_id | post_id | user_id | comment |
|--------------------------------------------------|
| 1 | 1 | 1 | Nice |
|--------------------------------------------------|
| 2 | 2 | 1 | Bad Thing |
|--------------------------------------------------|
| 3 | 2 | 2 | Hulla |
|--------------------------------------------------|
| 4 | 1 | A | Lol |
|--------------------------------------------------|
| 5 | 2 | A | Arse |
|--------------------------------------------------|
| 6 | 1 | 3 | Nice |
|--------------------------------------------------|
現在我使用的查詢:
SELECT *
FROM tbl_comment, tbl_post, tbl_user
WHERE tbl_post.post_id = tbl_comment.post_id
AND tbl_post.post_id = '$post_id'
AND (tbl_user.user_id = tbl_comment.user_id
OR (tbl_comment.user_id = 'A'
AND tbl_post.post_id = '$post_id'))
的user_id = 'A'
意味着管理員,但它不是在tbl_user
表中列出。它僅在tbl_comment表中被提及爲'A'
。
通過上面的查詢,我得到了兩行,在user_id = 'A'
的特定帖子上發表了一條評論。
我該如何解決這個問題?查看圖像,兩行具有相同的值。我想要唯一的行,而不是重複的行。
不清楚你想要選擇什麼;想僅選擇來自用戶的評論(不是管理員)?或來自管理員(不是用戶)的評論或...?,在示例結果表中顯示正確結果 –
@Mahmood_M ....讓我上傳一張圖片。這會幫助你理解。 – Saswat
@Mahmood_M ....上傳了一張圖片..它會幫助你理解。 – Saswat