首頁 >資料庫 >mysql教程 >如何在 LEFT JOIN 查詢中檢索第一個藝術家姓名?

如何在 LEFT JOIN 查詢中檢索第一個藝術家姓名?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-05 20:15:02409瀏覽

How to Retrieve the First Artist Name in a LEFT JOIN Query?

解決「LEFT JOIN Only First Row」查詢問題

在此查詢中,您的目標是擷取與特定關聯的第一藝術家姓名執行LEFT JOIN 時進給。但是,您在 ON 子句中使用子查詢的原始方法並未產生所需的結果。

為了解決此問題,我們需要調整子查詢以檢索最小的 Artist_id,確保選擇最早的 Artist。這需要對您的查詢進行輕微修改:

<code class="sql">SELECT *
FROM feeds f
LEFT JOIN artists a ON a.artist_id = (
    SELECT
      MIN(fa.artist_id) a_id
    FROM feeds_artists fa 
    WHERE fa.feed_id = f.feed_id
)</code>

說明:

此更新的查詢使用MIN() 函數來確定對應feed_id 的最小藝術家ID 。由於假設 Artist_id 會隨著時間的推移而增加,因此最小值代表與該 Feed 關聯的最早的藝術家。

其他注意事項:

需要注意的是,這種方法假設如下:

  • artist_id 不斷遞增,確保最早的藝術家是可識別的。
  • 給定 feed_id 沒有重複的artist_id 值,這可能會導致不可預測的結果。

以上是如何在 LEFT JOIN 查詢中檢索第一個藝術家姓名?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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