[SQL ] 分層(樹狀結構)的問題及一些語法問題
因為最近在弄報表的東西
所以開始接觸到M$ SQL
有兩個問題想要請問....
1.爬了不少文
卻還是不知道應該要如何在報表上顯示分層的畫面
ex: 總經理--會計部
∟財務課
∟會計課
∟人資部
∟採購部
∟資訊部
∟總務部
有去php的"商品型錄分層問題"看過
似乎是要用到指標的樣子
因為user要求在報表上呈現出某人在某個部門下
可是要顯示出他上一層級的部門是什麼
想要請問大家
M$ SQL應該要如何下指令
才能做出知道上一層的結點是什麼(Ex:財務課上一層是會計部)
然後帶出他上一層的結點 讓報表可以呈現出分層的狀態?
還是說這個只能用程式語言才寫的出來?
2.
我照著文章上的寫法
試著做出了一個declare的虛擬TABLE
可是不知道哪裡有問題
在執行時 一直會出現"接近'DATE'之處的語法不正確"
DECLARE @NEW TABLE(DATE DATETIME,HOURS VARCHAR(10))
DECLARE @STR VARCHAR(100),@DATE DATETIME,@MAXDATE DATETIME
SELECT @DATE=MIN(DATE),@MAXDATE=MAX(DATE) FROM ATTENDANCEROLLCALL
WHILE (@DATE<=@MAXDATE)
BEGIN
SELECT @STR=NULL
SELECT @STR=IsNull(@STR,HOURS)+HOURS
FROM ATTENDANCEROLLCALL
WHERE DATE=@DATE
INSERT INTO @NEW(DATE,HOURS)
SELECT TOP 1 @DATE,@STR
FROM ATTENDANCEROLLCALL
WHERE DATE=@DATE
SELECT @DATE=MIN(DATE) FROM ATTENDANCEROLLCALL WHERER DATE>@DATE
--↑這行出了問題 只要對這行註解 程式就可以執行
END
SELECT * FROM @NEW
可是卻不知道到底DATE哪裡的語法錯誤
小妹不才...
希望能夠請板上的大大幫忙解惑<(_ _)>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.124.169.163
※ 編輯: shirley72078 來自: 59.124.169.163 (11/04 15:54)
→
11/04 17:39, , 1F
11/04 17:39, 1F
→
11/04 17:44, , 2F
11/04 17:44, 2F
→
11/07 10:09, , 3F
11/07 10:09, 3F