我想获得不同"SkillCategory"
和排序id
ORA-01791-鲜明和
这里顺序是下面的脚本:
SELECT distinct EC.SKILL_CATEGORY from ETOPS_CHECK_FORM E
INNER JOIN EC_FORM_SKILL EC
ON EC.EC_FORM_ID=E.ID group by EC.SKILL_CATEGORY ORDER BY EC.ID
什么,我做错了什么?
我想获得不同"SkillCategory"
和排序id
ORA-01791-鲜明和
这里顺序是下面的脚本:
SELECT distinct EC.SKILL_CATEGORY from ETOPS_CHECK_FORM E
INNER JOIN EC_FORM_SKILL EC
ON EC.EC_FORM_ID=E.ID group by EC.SKILL_CATEGORY ORDER BY EC.ID
什么,我做错了什么?
的问题是,你需要决定其中 id排序。取出distinct
,然后用在order by
聚合函数:
SELECT EC.SKILL_CATEGORY
FROM ETOPS_CHECK_FORM E INNER JOIN
EC_FORM_SKILL EC
ON EC.EC_FORM_ID = E.ID
GROUP BY EC.SKILL_CATEGORY
ORDER BY MIN(EC.ID);
如果你只是想不使用聚合函数不重复的记录,然后使用DISTINCT关键字来代替GROUP BY
试试这个:
SELECT DISTINCT EC.SKILL_CATEGORY
FROM ETOPS_CHECK_FORM E
INNER JOIN EC_FORM_SKILL EC ON EC.EC_FORM_ID = E.ID
ORDER BY EC.ID;
它不能工作。甲骨文不知道如何使用key2对它进行排序,当它已经使用key1进行分类时。 – 2014-12-27 14:03:57
SELECT distinct EC.SKILL_CATEGORY
FROM ETOPS_CHECK_FORM E
INNER JOIN EC_FORM_SKILL EC
ON EC.EC_FORM_ID=E.ID
GROUP BY EC.SKILL_CATEGORY ASC
ORDER BY MAX(EC.ID)
我不知道你真正想做的...... ^^ 但是,如果你运行该脚本波纹管,你能告诉我们,如果结果是你所希望的:
Select ec.skill_category as sc
from EC_FORM_SKILL ec
group by sc;
待会儿见。
脚本不排序它是我的权利。它应按照编号 – 2014-12-27 14:12:30
排序,按ec.id排序。但是你需要在select中返回这个;) – YannXplorer 2014-12-27 17:01:34
对不起,对我而言,这是作品的魅力:) – 2014-12-27 14:04:56