0
我有这个复杂的Sql查询,我不能按我的意愿订购。
订购复杂的MySql查询
查询
$query = "SELECT *
FROM element_skanning yt1 JOIN
(SELECT objekt_nr, element_nr
FROM element_skanning
WHERE vart IN ('B.Avf', 'R.Avf')
GROUP BY objekt_nr, element_nr
HAVING count(*) > 1
) yt2
ON yt2.objekt_nr = yt1.objekt_nr AND
yt2.element_nr = yt1.element_nr
WHERE vart IN ('B.Avf', 'R.Avf')
ORDER BY 2;";
我倒是喜欢用命令:element_nr ASC
我试图difrent东西,如:
WHERE vart IN ('B.Avf', 'R.Avf')
GROUP BY objekt_nr, element_nr
HAVING count(*) > 1
ORDER BY element_nr ASC
或:
WHERE vart IN ('B.Avf', 'R.Avf')
GROUP BY objekt_nr, element_nr
ORDER BY 2 ASC
HAVING count(*) > 1
最后的主查询ORDER BY 2。这是element_nr
但所有的数据没有排序。
为什么?
发布您的表格结构,数据源样本和预期结果。或理想地提供sqlfiddle – Alex
...并向我们展示您所需的输出。 –
为什么在外部'SELECT'中有WHERE vart IN('B.Avf','R.Avf')'时,在子查询中也是如此? – i486