我正在尝试根据myTable1
中的column
订购myTable2
。我已尝试使用各种joins
,例如right
,left
,inner
,只有join
。以下两个SQL查询让我最接近最终目标,但它们仍然不对。
以下查询正确选择所有正确的记录,但不按所需顺序显示它们。它们只是按照它们存储在myTable1
SELECT myTable1.* FROM myTable1 INNER JOIN myTable2 b ON myTable1.myRef = b.myRef WHERE col2 = 1 ORDER BY b.col3 ASC
以下查询根据col2
内的myTable2
正确排序记录,但出于某种原因,它只返回部分结果,而不是所有结果。
SELECT myTable1.* FROM myTable1 LEFT JOIN myTable2 b ON myTable1.myRef = b.myRef WHERE col2 = 1 ORDER BY b.col3 ASC
对于记录我正在使用mysqli
答案 0 :(得分:0)
尝试以下方法:
SELECT myTable1.* FROM myTable1 JOIN (SELECT myTable2.* FROM myTable2) b ON myTable1.myRef = b.myRef WHERE col2 = 1 ORDER BY b.col3 ASC
如果您的 WHERE 语句正确引用 col2 , 方法应该工作得很好。