Mysql 选择“按字段排序”,即使该字段不存在

Mysql 选择“按字段排序”,即使该字段不存在,mysql,Mysql,我有这个select,在这里我可以找到despecific ID,并按照我想要的顺序将它带到这里。 但我对这种关系有个问题。我在foreach函数中使用它,我需要7个循环。问题不在于空值,问题在于它只带来了中继产品。当然这不是问题,谢天谢地它发生了,但是在我的例子中,如果它只有2个,那就破坏了布局 有没有一种方法可以让我这样做:如果找不到字段,就把它放在适当的位置 如果我创建了关系,它是有效的,但我需要用700个产品来创建它 我发现了,但这似乎不是一个零问题 我也尝试了左连接,但正如我所说,如果

我有这个select,在这里我可以找到despecific ID,并按照我想要的顺序将它带到这里。 但我对这种关系有个问题。我在foreach函数中使用它,我需要7个循环。问题不在于空值,问题在于它只带来了中继产品。当然这不是问题,谢天谢地它发生了,但是在我的例子中,如果它只有2个,那就破坏了布局

有没有一种方法可以让我这样做:如果找不到字段,就把它放在适当的位置

如果我创建了关系,它是有效的,但我需要用700个产品来创建它

我发现了,但这似乎不是一个零问题

我也尝试了左连接,但正如我所说,如果关系不存在,它就不能带来NULL

我瞎了

我找到了这个名字 从…起 选择pts_名称, 案件编号 当5275 那么1 21岁时 然后2 当5276 然后3 当5277 然后4 当5278 然后5 49岁时 那么6 当5279 那么7 按排序顺序结束 来自products\u TecSecs 你的身份证在哪里 在5275、21、5276、5277、5278、49、5279中 A. 按a.排序\按ASC排序。它带来了我想要的选择,但仍然找不到实现我目标的方法

加入 挑选* 从Products2TecsSecs到p2t 在p2t.fk\u tecsec\u id=pt.pts\u id上作为pt左连接产品 其中p2t.fk_product_id=34 和pt.pts_id 在5275、21、5276、5277、5278、49、5279或p2t中,p2t_值为空 按字段pts_id、5275、21、5276、5277、5278、49、5279排序 限制40


但没有起作用。它带来的结果超出了所选的IN字段。

您是否可以简单地在WHERE子句中添加以下选项之一,并使用左连接解决方案:

SELECT *
                    FROM  products2tecspecs as p2t, products_tecspecs as pt 
                    WHERE p2t.fk_product_id = '%s' AND pt.pts_id = fk_tecspec_id AND pt.pts_id 
                    IN (5275, 21, 5276, 5277, 5278,  49, 5279)
                    ORDER BY FIELD(pts_id, 5275, 21, 5276, 5277, 5278,  49, 5279)

正如我发布的,它不起作用。可能是Case,或者一些IF,但找不到如何…事实上,p2t.p2t_值应该是NULL,但不起作用。已尝试p2t。p2t_值=;也不管用。
    OR pt.pts_id IS NULL
    OR fk_tecspec_id IS NULL