jsp向數(shù)據(jù)庫中添加日期
ms sql server:
nsert into student(studentid,time1)values('15',getdate());
my sql
insert into tablename (fieldname) values (now())
取得數(shù)據(jù)庫某表的所有行數(shù)
connection conn=dbconnection.connecttodb();
statement stat=conn.createstatement();
resultset rs=stat.executequery(select count(*) from book);
rs.next();
rs.getint(1);//以前好像有試過是rs.getint(0);
sql 取當天或當月的記錄
sqlsql server
sql 取當天或當月的記錄
今天晚上加班,遇到要把數(shù)據(jù)庫中的時間和當天時間進行比較的問題,直接比較肯定是不行的了。因為表中的時間格式是這樣的:2007-02-02 16:50:08.050, 如果直接和當天的時間比較,就總得不到準確數(shù)據(jù),但是我們可以把這種格式的時間[格式化]成2007-02-02,也就是只有年-月-日,然后把當天的時間也格式化成 年-月-日的格式。
這樣,思路就出來了!
我們格式化日期要用到 convert()這個函數(shù),要用到3個參數(shù),首先來格式化當天的日期,convert(varchar(10),getdate(),120)
這樣我們就可以把當天的日期格式化為: 2007-2-2,然后格式化數(shù)據(jù)庫表中的日期
convert(varchar(10),timefiled,120),最后我們就可以用一條sql語句得到當天的數(shù)據(jù)了。
例如:
程序代碼
select * from view_countbill where convert(varchar(10),[time],120) = convert(varchar(10),getdate(),120)
注意:
convert() 函數(shù)中的各個參數(shù)的意義,第一個參數(shù),varchar(10)是目標系統(tǒng)所提供的數(shù)據(jù)類型,包括 bigint 和 sql_variant.不能使用用戶定義的數(shù)據(jù)類型。第二個參數(shù)是你要轉(zhuǎn)換的字段,我這里是[time].最后一個就是格式了,這個值是可選的:20或者120都可以,它遵循的是[odbc 規(guī)范],輸入/輸出樣式為:yyyy-mm-dd hh:mm:ss[.fff]
具體的可以參考sql server的聯(lián)機幫助!
t-sql查找表中當月的記錄
思路:將要查找的時間字段用month()函數(shù)取出其中的月份,然后再取出當前月的月份,對比就ok了
例:
程序代碼
select * from view_countbill where month([time]) = month(getdate())
更多信息請查看IT技術(shù)專欄