SQLite
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> SQLite

Cách hoạt động của hàm Time () trong SQLite

SQLite có time() hàm cho phép bạn trả về giá trị thời gian dựa trên chuỗi thời gian và bất kỳ công cụ sửa đổi nào.

Nó trả về thời gian ở định dạng sau:HH:MM:SS

Để sử dụng hàm này, bạn cần cung cấp một chuỗi thời gian, cộng với bất kỳ công cụ sửa đổi (tùy chọn) nào. Công cụ sửa đổi cho phép bạn thay đổi thời gian, chẳng hạn như thêm một số giờ, đặt nó thành giờ địa phương, v.v.

Cú pháp

Cú pháp của time() hàm như sau:

time(timestring, modifier, modifier, ...)

timestring đối số phải là một chuỗi thời gian hợp lệ.

Công cụ sửa đổi modifier đối số là tùy chọn. Bạn có thể cung cấp một hoặc nhiều bổ ngữ. Nếu bạn cung cấp một công cụ sửa đổi, nó phải là một công cụ sửa đổi hợp lệ.

Ví dụ

Đây là một ví dụ cơ bản để chứng minh time() hàm đang được sử dụng với một đối số.

SELECT time('now');

Kết quả:

03:47:36

now chuỗi thời gian được chuyển đổi thành ngày và giờ hiện tại. Vì tôi đang sử dụng time() , chỉ phần thời gian được trả về.

Thêm công cụ sửa đổi

Chúng tôi có thể sửa đổi kết quả trước đó bằng cách sử dụng một công cụ sửa đổi. Đây là một ví dụ.

SELECT time('now', '+5 hours');

Kết quả:

08:48:24

Trong trường hợp này, tôi đã thêm năm giờ vào thời gian.

Nhiều công cụ sửa đổi

Như đã đề cập, bạn có thể thêm một hoặc nhiều bổ ngữ. Dưới đây là ví dụ về việc thêm một công cụ sửa đổi khác vào ví dụ trước.

SELECT time('now', '+5 hours', 'localtime');

Kết quả:

18:50:08

localtime công cụ sửa đổi giả định chuỗi thời gian được cung cấp là Giờ Phối hợp Toàn cầu (UTC). Sau đó, nó điều chỉnh chuỗi thời gian để nó hiển thị giờ địa phương.

Do đó, bạn có thể nhận được một kết quả khác, tùy thuộc vào giờ địa phương của bạn.

Chuỗi văn bản là chuỗi thời gian

Các ví dụ trên sử dụng now dưới dạng chuỗi thời gian, nhưng bạn có thể cung cấp bất kỳ chuỗi thời gian hợp lệ nào.

Dưới đây là một số ví dụ khác.

SELECT time('1999-12-18 17:10:23');

Kết quả:

17:10:23 

Trong trường hợp này, nó chỉ đơn giản là xóa phần ngày tháng.

time () so với strftime ()

time() hàm trả về chính xác cùng một kết quả mà strftime('%H:%M:%S', ...) lợi nhuận. time() chỉ là một cách thuận tiện hơn để thực hiện.

SELECT 
  time('now'),
  strftime('%H:%M:%S', 'now');

Kết quả:

time('now')  strftime('%H:%M:%S', 'now')
-----------  ---------------------------
03:56:09     03:56:09                   

Phạm vi ngày

Như với tất cả các hàm ngày và giờ của SQLite, time() chỉ hoạt động cho các ngày từ 0000-01-01 00:00:00 đến 9999-12-31 23:59:59 (số ngày julian từ 1721059,5 đến 5373484,5).

Đối với những ngày nằm ngoài phạm vi đó, kết quả không được xác định.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách tạo bảng Chỉ khi nó không tồn tại trong SQLite

  2. SQLiteException:cơ sở dữ liệu không xác định

  3. Android:SQLite tiết kiệm mảng chuỗi?

  4. Có thể di chuyển từ Realm sang Sqlite không?

  5. Nhận ngày thứ Hai đầu tiên của năm trong SQLite