有關SQL? |
尚未結案
|
chrislao
初階會員 發表:86 回覆:69 積分:36 註冊:2002-12-28 發送簡訊給我 |
select Attendance.A_Date,Staff_Data.* from Attendance,Staff_Data
where (Attendance.A_StaffID=Staff_Data.S_StaffID) and (convert(char(10),A_Date,101) = '01/08/2004') select temp1.a_date,staff_data.*
from (select * from attendance where (convert(char(10),A_Date,101) = '01/08/2004')) as temp1,staff_data
where temp1.a_staffid=staff_data.s_staffid 請問上述兩條SQL 的得出的結果否一樣?
如果 Attendance 的Table有多達二十萬條或以上的記錄, 第二條SQL的效率是否比第一條好?
|
James
高階會員 發表:10 回覆:290 積分:220 註冊:2002-07-25 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
chrislao 你好: 依我的經驗, 很難說耶, 一般來說, 第二條 SQL 可能效率較差, 但是如果(select * from attendance where (convert(char(10),A_Date,101) = '01/08/2004')) 可以過濾掉很多的資料, 就很難說了. PS. Index 有很大的影響. 另外, Function 不僅會讓 Index 失效, 對速度也有很大的影響喔, 應盡量避免使用. 發表人 - Mickey 於 2004/01/11 15:59:38
|
chrislao
初階會員 發表:86 回覆:69 積分:36 註冊:2002-12-28 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |