程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> Sql server 取當天或當月的記錄

Sql server 取當天或當月的記錄

編輯:關於SqlServer

       jsp向數據庫中添加日期

      MS SQL SERVER:

      NSERT into student(studentid,time1)values('15',getdate());

      MY SQL

      insert into tablename (fieldname) values (now())

      取得數據庫某表的所有行數

      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 取當天或當月的記錄

      今天晚上加班,遇到要把數據庫中的時間和當天時間進行比較的問題,直接比較肯定是不行的了。因為表中的時間格式是這樣的:2007-02-02 16:50:08.050, 如果直接和當天的時間比較,就總得不到准確數據,但是我們可以把這種格式的時間[格式化]成2007-02-02,也就是只有年-月-日,然後把當天的時間也格式化成 年-月-日的格式。

      這樣,思路就出來了!

      我們格式化日期要用到 Convert()這個函數,要用到3個參數,首先來格式化當天的日期,Convert(varchar(10),getDate(),120)

      這樣我們就可以把當天的日期格式化為: 2007-2-2,然後格式化數據庫表中的日期

      Convert(varchar(10),TimeFiled,120),最後我們就可以用一條Sql語句得到當天的數據了。

      例如:

      程序代碼

      Select * From VIEW_CountBill Where Convert(varchar(10),[time],120) = Convert(varchar(10),getDate(),120)

      注意:

      Convert() 函數中的各個參數的意義,第一個參數,varchar(10)是目標系統所提供的數據類型,包括 bigint 和 sql_variant.不能使用用戶定義的數據類型。第二個參數是你要轉換的字段,我這裡是[time].最後一個就是格式了,這個值是可選的:20或者120都可以,它遵循的是[ODBC 規范],輸入/輸出樣式為:yyyy-mm-dd hh:mm:ss[.fff]

      具體的可以參考Sql Server的聯機幫助!

      T-Sql查找表中當月的記錄

      思路:將要查找的時間字段用Month()函數取出其中的月份,然後再取出當前月的月份,對比就OK了

      例:

      程序代碼

      Select * From VIEW_CountBill Where Month([time]) = Month(getDate())

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved