我想獲得不同"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