Ⅰ sql中如何比較兩個表的時間欄位的大小
可以直接
a.a>b.b的啊
你怎麼寫的,,,
如果直接不行,,,
可以試下
cast(a.a as datetime)>cast(b.b as datetime)
再試下,,,不過正常來說直接第一種酒可以的
Ⅱ sql資料庫的一個時間類型欄位與當前時間比較,要是大於等於的時候就執行某sql語句
直接update就可以了,在where後加判斷,語句:
update table
set 更新欄位 = '更新值'
where 時間類型欄位 > getdate()
Ⅲ sql資料庫查詢兩個表之間時間的比較
我們通常使用的表之間的聯接是等值聯接;你的情況需要使用外聯接來做。 我按照你的意思分別見了table1,table2,table0(對應你的table表),並把你的數據也增加進去了。 執行下面的SQL可能會得到你想要的結果: (selecttable1.hm,table1.no1,table2.(table1.hm=table2.hm)wheretable1.hmisnotnull) union (selecttable2.hm,table1.no1,table2.(table1.hm=table2.hm)wheretable2.hmisnotnull) 輸出結果如下:
希望是你想要的! 剛才沒用到table0表,如果保證hm的值必須在table0中,如要修改上面的SQL如下: select*from(selecttable1.hmashm,table1.no1,table2.(table1.hm=table2.hm)wheretable1.hmisnotnull union selecttable2.hmashm,table1.no1,table2.(table1.hm=table2.hm)wheretable2.hmisnotnull)astwheret.hmin(selecthmfromtable0) 這樣,當table1,table2中的hm值不在table0表中,查詢結果就不會出現。 外聯接,包括左外聯接、右外聯接、全外聯接的確大多數的程序員都不使用。寧肯用很長的程序代碼來實現,但是用資料庫sql來實現其實效率是最快的。 建議你了解外聯接的知識。
Ⅳ 如何在SQL中比較兩個時間相等
首先這倆欄位是時間類的欄位,或者至少你得保證按時間格式存儲的文本
datediff(day,datetime1,datetime2) =0
精確到day是不是一樣的
datediff(hh,datetime1,datetime2) =0
精確到小時是不是一樣的
。。。
Ⅳ sql資料庫時間如何比較
SELECT DATEDIFF(DAY, (SELECT table.dtime FROM table WHERE ID=1 )
,GETDATE())
//
(SELECT table.dtime FROM table WHERE ID=1 )
是你要從資料庫中提取的時間,重新自定義一下
GETDATE()是今天的日期
總的就是表示從資料庫里提取的時間到今天的差距
如果是想比較資料庫和資料庫里的時間,就按照上面的方法再寫一次
Ⅵ SQL資料庫中如何比較兩條的日期:並查詢間隔
將兩個日期賦值給兩個變數,然後去比較,當然,也可以寫成一個語句,那會比較長。
欄位名你都沒有提供,我就下面寫,你自己改。
declare @a as datetime
declare @b as datetime
select @a = Cdate from 表名 where lid=1
select @b = Cdate from 表名 where lid=2
select abs(datediff(day,@a,@b))
取了變數,用datediff,以day天數比較,然後可能會產生負數,取個絕對值。
Ⅶ SQL 對時間段查詢,怎麼比較
如你的資料庫中記錄時間的項名是selldate(是其他的話,你改下就行)則:
1.你的資料庫如果是access用下面的語句
<%
dim nowstartdate nowenddate
nowstartdate=2009-01-15
nowenddate=2009-02-15
sql="select * from 你的表 where selldate-#"&nowstartdate&"#>=0 and selldate-#"&nowenddate&"#<=0"
%>
2.你的資料庫如果是MSSQL用下面的語句
<%
dim nowstartdate nowenddate
nowstartdate=2009-01-15
nowenddate=2009-02-15
sql="select * from 你的表 where selldate-'"&nowstartdate&"'>=0 and selldate-'"&nowenddate&"'<=0"
%>或者1.把日期當字元串來操作,其實日期和數字一樣,在SQL語句中,都不能加'字元串',否則會出現語法錯誤
2.選擇某個日期中間的記錄可以用between and 而不是用< > =等符號,而且日期之間也有講究,access資料庫的日期間用#日期#隔開,mssql用'單引號,如:
timestr類型為日期/時間
Dim dateStr1,DateStr2
DateStr1="2006-8-10"
DateStr2=Date()
sql="select * from Table where timestr between #"&DateStr1&"# and #"&DateStr2&"#"
Ⅷ SQL 資料庫時間比較
有錯誤,你給的$time = date("Y-m-d G:i:s");是日期的格式化字元串,比較的時候要用引號因起來,另外你這個sql的意思是查詢已經開始並且沒有過期的記錄條數,並沒有判斷哪條記錄已經開始或過期,應該這樣寫:
$time = date("Y-m-d G:i:s");
$sql="select ExamInfo_Begin,ExamInfo_End from kl_examinfo where id='$id'";
//$id是你要查詢的記錄的主鍵值;
$query=mysql_query($sql);
list($begin,$end)=mysql_fetch_row($query);
if($begin<'$time')
{
echo "已經開始";
}
else
{
echo "還未開始";
}
if($end>'$time')
{
echo "沒有過期";
}
else
{
echo "已經過期";
}
Ⅸ 如何在SqlServer資料庫中用SQL語句中比較時間
datediff()這個挺好用的,select
datediff(time1,time2,month)
from
a,time1和time2兩個欄位必須是時間欄位
Ⅹ sql 語句中如何比較當前時間與指定時間是否相同
代碼的思路:
兩個時間的相差的秒數,當等於0時,說明兩日期相同。
getdate()表示獲取當前系統時間
sql 語句中比較當前時間與指定時間是否相同參考代碼如下:
select datediff(second,'2012-12-15 16:54:00',getdate())
(10)資料庫sql時間比較擴展閱讀:
GETDATE() 函數從 SQL Server 返回當前的時間和日期。
語法:GETDATE()
實例如下
使用下面的 SELECT 語句:
SELECT GETDATE() AS CurrentDateTime
結果:
CurrentDateTime
2008-12-29 16:25:46.635
注釋:上面的時間部分精確到毫秒。