iT邦幫忙

0

SQL 取每日固定時間區段的資料

請問各位,我想抓每日 'start_at' 7:50到隔日7:50的資料,有什麼方法可以做到?
start_at 格式 EX:2020-05-21 16:30:28

$sql = "SELECT a.start_at,a.end_at,a.work_no,a.machine_no,
			   b.groupname,b.arbpl,
		FROM   machine_time a,machine b
        WHERE  a.machine_no = b.arbpl and a.work_no like 'C%' and         b.groupname !='' ";
slime iT邦大師 1 級 ‧ 2020-06-24 14:35:11 檢舉
用 基準日 (例如: now 或 today )
轉換成當日 0:00
再用 datediff , dateadd 等公式, 把當日 0:00 往前減 16 小時 10 分, 跟往後加 7 小時 50 分, 取得兩個時間點.
再用 start_at 跟 end_at 去比對.

1 個回答

0
blueqoo
iT邦新手 5 級 ‧ 2020-06-24 18:43:21

這樣直接下where條件應該可以

where a.start_at >= convert(datetime, convert(varchar(4), Year(getdate()))+'/'+convert(varchar(2),Month(getdate()))+'/'+convert(varchar(2),Day(getdate())) + ' 07:50')
and a.start_at <= convert(datetime, convert(varchar(4), Year(getdate()))+'/'+convert(varchar(2),Month(getdate()))+'/'+convert(varchar(2),Day(getdate())+1) + ' 07:50')

我要發表回答

立即登入回答