請教調出一整個部門的sql語法? |
答題得分者是:James
|
pedro
尊榮會員 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
|
yachanga
資深會員 發表:24 回覆:335 積分:296 註冊:2003-09-27 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi pedro, 以 Oracle 為例
select level, p.* from fish_test p connect by relation = prior id start with id = 100資料如下: 結果如下: 至於 SQL Server,則沒有研究,看看其他大大是否有解 ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman |
pedro
尊榮會員 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
James
高階會員 發表:10 回覆:290 積分:220 註冊:2002-07-25 發送簡訊給我 |
CREATE FUNCTION test ( @ID char(10) ) RETURNS @mock TABLE ( field1 char(10) primary key, field2 char(10), field3 int ) AS BEGIN DECLARE @level int -- DECLARE @mock TABLE ( field1 char(10) primary key, field2 char(10), field3 int ) SET @level = 0 INSERT @mock SELECT ID, Relation, 0 FROM a WHERE ID = @ID WHILE @@rowcount > 0 BEGIN SET @level = @level 1 INSERT @mock SELECT ID, Relation, @level FROM a JOIN @mock on field1 = Relation and field3 = @level - 1 END RETURN END GO -- select * from test('100')參考看看 |
pedro
尊榮會員 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
|
James
高階會員 發表:10 回覆:290 積分:220 註冊:2002-07-25 發送簡訊給我 |
|
st33chen
尊榮會員 發表:15 回覆:591 積分:1201 註冊:2005-09-30 發送簡訊給我 |
您好,
我是笨人都用笨法 您的 id 欄已很有結構, 好像用不到 relation select * from tablename where id like '1%' 要找部門頭的話 select distinct substr(id,1,1) id0 from tablename 或 select substr(id,1,1) id0 from tablename where substr(id,2,2)='00'
------
IS IT WHAT IT IS 我是 李慕白 請倒著唸. 又想把老話拿出來說, 請用台語發音 : 專家專家全是ROBOT CAR (滷肉腳啦); 都已接手這麼久了, 績效還是那麼爛, 講話還那麼大聲.
編輯記錄
st33chen 重新編輯於 2009-08-25 08:59:08, 註解 無‧
|
pedro
尊榮會員 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
恩,若只是找部門,是這樣沒錯,
但不夠嚴謹, 其實我要找的是類似BPM或HR裡,找到該部門裡所有成員,不管有無中階主管 ===================引 用 st33chen 文 章=================== 您的 id 欄已很有結構, 好像用不到 relation select * from tablename where id like '1%' 要找部門頭的話 select distinct substr(id,1,1) id0 from tablename 或 select substr(id,1,1) id0 from tablename where substr(id,2,2)='00'
編輯記錄
pedro 重新編輯於 2009-08-25 17:56:30, 註解 無‧
|
jackiemi2_seed
中階會員 發表:37 回覆:97 積分:76 註冊:2006-09-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |