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

Oracle so sánh hai ngày khác nhau

Chuỗi đầu vào của bạn trong to_date() chức năng không phù hợp với mẫu của bạn. Giá trị chứa - làm dấu phân cách, tuy nhiên trong mẫu bạn sử dụng / :

Nếu bạn căn chỉnh định dạng đầu vào và mẫu, điều này sẽ hoạt động:

datetrx <= to_date('2014-07-16 00:00:00','yyyy-mm-dd hh24:mi:ss')

Cá nhân tôi thích ký tự dấu thời gian ANSI hơn to_date() vì chúng có thể di động và ít gõ hơn:

datetrx <= timestamp '2014-07-16 00:00:00'

Lưu ý rằng định dạng chuỗi được cung cấp ở đây là luôn luôn định dạng ISO.

Lưu ý phụ:
Bất kỳ "định dạng" nào bạn thấy khi xem các giá trị trong cột daterx được áp dụng bởi máy khách SQL mà bạn sử dụng để hiển thị dữ liệu đó (SQL * Plus, SQL Developer, ...).

Bản thân giá trị được lưu trữ không có định dạng trên máy chủ. Định dạng DATE giá trị là luôn luôn được thực hiện bởi ứng dụng khách SQL (hoặc ứng dụng của bạn):



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ResultSet.getTimestamp (date) so với ResultSet.getTimestamp (date, Calendar.getInstance (tz))

  2. Tạo bảng tên động với Câu lệnh chuẩn bị trong java

  3. Chèn một lượng lớn dữ liệu hiệu quả với SQL

  4. cách chọn hàng ngẫu nhiên trong oracle nhanh hơn với bảng có hàng triệu hàng

  5. Trích xuất một dấu thời gian đầy đủ (bao gồm cả ngày tháng) từ một truy vấn Chọn; Oracle