首頁  >  文章  >  資料庫  >  如何在單一查詢中識別投訴人和投訴解決者?

如何在單一查詢中識別投訴人和投訴解決者?

Susan Sarandon
Susan Sarandon原創
2024-10-24 16:07:01248瀏覽

How to Identify Both Complainant and Complaint Resolver in a Single Query?

在不同欄位上兩次連接同一表格以進行使用者識別

考慮一個涉及使用者表格和投訴表的資料庫場景。投訴表包含發起投訴的使用者、投訴文字、關閉投訴的使用者等資訊。所有參與投訴的使用者(投訴者和投訴解決者)都儲存在使用者表中。

為了識別投訴者和投訴解決者的用戶名,我們需要將投訴表與用戶表連接兩次,每個用戶一次用戶欄。以下查詢完成此操作:

<code class="sql">SELECT 
     complaint.complaint_text, 
     A.username, 
     B.username
FROM 
     complaint 
     LEFT JOIN user A ON A.user_id=complaint.opened_by 
     LEFT JOIN user B ON B.user_id=complaint.closed_by</code>

在此查詢中:

  • 我們首先選擇投訴文字以及opened_by 和 returned_by 使用者的使用者名稱。
  • 我們將投訴表與使用者表進行兩次左連接,並分配別名「A」和「B」來區分這兩個連接。
  • ON 子句確保連接適當的使用者行是基於投訴表中的opened_by和close_by欄位。

執行此查詢將檢索投訴文本以及投訴發起者和投訴解決者的用戶名,從而提供投訴的全面視圖與用戶身份相關的數據。

以上是如何在單一查詢中識別投訴人和投訴解決者?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn