SQL 語法一問 |
答題得分者是:cashxin2002
|
avex
初階會員 發表:19 回覆:49 積分:43 註冊:2003-03-28 發送簡訊給我 |
各位先進, 我的資料表 table1 有幾個欄位 checked , enable_times, use_enabled, last_status_time
我要如何用一個 SQL 語法使得....
如果 table1 裡的所有資料的 checked 是 true 的話, 那麼, 該筆資料的 enable_times 加一, 且 use_enabled 設為 true, 然後 last_status_time 設為現在的時間?
記得, 是使用 SQL 語法, update 每筆在 table1 的資料 which checked 是 true 的哦.. 先跟大家說聲謝謝
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ Update Table1 Set enable_times=enable_time+1, use_enabled='true', Last_status_time=Now where checked='true'; P.S 忘記考慮[Now]函數會抓出日期和時間(08/20/2003 下午 05:43:08)﹐一般來講﹐日期的格式是10個字元﹐比如﹕08/20/2003﹐如果只需抓出日期﹐不需要時間的話﹐可參考如下﹕
Update Table1 Set enable_times=enable_times+1, use_enabled='true', Last_status_time=SubString(Now,1,10) where checked='true';
//SubString(Now,1,10)抓出Now中第一個字元為起始位置﹐長度為10的值
如果資料庫為Access﹐請將SubString改為Mid 參考看看﹗ =====================
努力,相信會獲得美麗!
忻晟 發表人 - cashxin2002 於 2003/08/20 19:57:40
------
忻晟 |
avex
初階會員 發表:19 回覆:49 積分:43 註冊:2003-03-28 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
avex
初階會員 發表:19 回覆:49 積分:43 註冊:2003-03-28 發送簡訊給我 |
對不起小弟再附加問一個再接下來一步的小問題: 除了以上的工作外, 在我的 table2 裡面有欄位 status_time, FID. 其中 FID 對映到 table1 的 ID 欄位, ID 是主索引, 也就是 User ID 的意思. 若今天我在 update 以上工作時也想要把 update 前, 在 table1 的 status_time , 複製一份到 table2 的 status_time by 各個不同的 ID(這樣我才可以查到歷史記錄) 時 SQL 要怎麼下?
|
avex
初階會員 發表:19 回覆:49 積分:43 註冊:2003-03-28 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
引言: 對不起小弟再附加問一個再接下來一步的小問題: 除了以上的工作外, 在我的 table2 裡面有欄位 status_time, FID. 其中 FID 對映到 table1 的 ID 欄位, ID 是主索引, 也就是 User ID 的意思. 若今天我在 update 以上工作時也想要把 update 前, 在 table1 的 status_time , 複製一份到 table2 的 status_time by 各個不同的 ID(這樣我才可以查到歷史記錄) 時 SQL 要怎麼下?您好﹗ Update table1, table2 Set table2.status_time=table1.status_time where table2.FID=table1.ID 參考看看﹗ 歹勢! 以上紅色處漏寫了! 也可以寫成: Update table1 a, table2 b Set b.status_time=a.status_time where b.FID=a.ID ===================== 努力,相信會獲得美麗! 忻晟 發表人 - cashxin2002 於 2003/08/20 22:16:00
------
忻晟 |
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
引言: 第一個問題找到原因了, 小弟偷懶因為從網頁上co下來 enable_times=enable_time 1 , 所以 enable_time 少一個s, 而且 'true' 要寫成 true 不曉得這個做對嗎? 是否正常?您好! [use_enabled]是Access中的[是/否]形態欄位吧,那樣的話,欄位值(true和false)兩端就不需要加單引號, 如果是的話, 那您的寫法就沒有錯, 小弟原以為這個欄位是字串形態的, 所以在兩端加上引號了. ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟 |
avex
初階會員 發表:19 回覆:49 積分:43 註冊:2003-03-28 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |