How to select a single record in a left join

前端 未结 8 1038
我寻月下人不归
我寻月下人不归 2021-02-01 02:40

I need to select a specific model from the Models table using its key ModelID. I also need to add a blurb of content from the Model_Content table. The Models_Content table, howe

相关标签:
8条回答
  • 2021-02-01 03:39
     SELECT TOP 1 M.ModelID, M.Model, C.Content
     FROM   Models M LEFT JOIN Models_Content C ON M.ModelID =  C.ModelID
     WHERE      M.ModelID = 5
     ORDER BY C.ContentID ASC
    
    0 讨论(0)
  • 2021-02-01 03:40

    MySQL 5.7+ allows you to use ANY_VALUE+GROUP BY which will return the column from one (random) row of the joined table.

    SELECT M.ModelID, M.Model, ANY_VALUE(C.Content)
    FROM   Models M 
    LEFT JOIN Models_Content C ON M.ModelID = C.ModelID
    WHERE      M.ModelID = 5
    

    or, in case you need it for all models

    SELECT M.ModelID, M.Model, ANY_VALUE(C.Content)
    FROM   Models M 
    LEFT JOIN Models_Content C ON M.ModelID = C.ModelID
    

    more info: https://dev.mysql.com/doc/refman/5.7/en/group-by-handling.html

    0 讨论(0)
提交回复
热议问题