3 回答

TA貢獻(xiàn)7條經(jīng)驗(yàn) 獲得超1個贊
是要遍歷所有部門,然后按不同部門分別返回該部門的員工姓名對嗎?如果是這樣的,可對部門進(jìn)行游標(biāo)處理。如下:
---------// 定義部門
-----------// ?假設(shè)部門表名稱為 Depart
declare @TmpDeprtNo ?varchar(100)
------------------、、 定義游標(biāo)
declare cur_DepartNo cursor for select DeprtNo from Depart?
fetch next from cur_DepartNo?into @TmpDepartNo ?
while (@@fetch_status = 0 )
begin
? ? ? select EName from??EMP where DeptNo = @TmpDeptNo
? ? ?------------------// 查找下一員工姓名
? ? ?fetch next from cur_DepartNo?into @TmpDepartNo ?
end?
close cur_DepartNo?
deallocate cur_DepartNo?

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個贊
?SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO FROM EMP 這個是表的所有信息 ?要根據(jù)他的DEPTNO查詢該部門對應(yīng)的員工姓名

TA貢獻(xiàn)7條經(jīng)驗(yàn) 獲得超1個贊
---------// 定義當(dāng)前員工姓名
-----------// 假設(shè)員工 姓名字段 Name ?, 部門代號字段DepNo , 傳入的部門號 @Depno
declare @TmpName ?varchar(100)
------------------、、 定義游標(biāo)
declare cur_Name cursor for select Name from emp where Depno=@Depno
fetch next from cur_Name into @TmpName?
while (@@fetch_status = 0 )
begin
? ? ? return @TmpName?
? ? ?------------------// 查找下一員工姓名
? ? ?fetch next from cur_Name into @TmpName
end?
close cur_Name
deallocate cur_Name
- 3 回答
- 0 關(guān)注
- 3276 瀏覽
添加回答
舉報(bào)