1
選擇行我有查詢,如下所示:的Oracle SQL - 水平最高的
SELECT CONNECT_BY_ROOT(name), LEVEL
FROM Workers
CONNECT BY PRIOR boss=nick
START WITH function IN ('programmer', 'designer');
我得到:
BELLA 1
BELLA 2
BELLA 3
MICKEY 1
MICKEY 2
BOB 1
BOB 2
DUDE 1
DUDE 2
DUDE 3
SONIA 1
SONIA 2
SONIA 3
KATE 1
KATE 2
KATE 3
LUKE 1
LUKE 2
LUKE 3
LUKE 4
我想是獲得最高級別名稱。 我的意思是:
BELLA 3
MICKEY 2
BOB 2
DUDE 3
SONIA 3
KATE 3
LUKE 4
我試圖做到這一點,如下所示:
SELECT CONNECT_BY_ROOT(name), MAX(LEVEL)
FROM Workers
CONNECT BY PRIOR boss=nick
START WITH function IN ('programmer', 'designer')
GROUP BY CONNECT_BY_ROOT(name);
,但它不工作。我得到'00979。 00000 - 不是GROUP BY表達式的錯誤。爲什麼?我怎樣才能使它工作?
是的,這一切的一切,這是一點,謝謝:) – michalsol