簡體   English   中英

如何根據提供的日期在表中找到時間戳值

[英]how can i find a timestamp value in a table based on a date provided

我有一個數據庫,其中date_added字段是時間戳。 我想查詢並選擇某些日期添加的產品。 假設: tbl_products: id INT name VARCHAR date_added TIMESTAMP

查詢: SELECT * FROM tbl_products WHERE date_added = ? 哪里? 是我發送的參數。 我可以將它作為日期或時間戳發送。

比賽需要在幾天之后。 我的意思是我需要找到某一天添加​​的產品。

編輯:我正在使用oracle數據庫

你基本上有兩個選擇......

有效的方法(如果date_added列上存在索引,將使用索引):

SELECT * FROM tbl_products
WHERE date_added between ? and ?

根據查詢參數的00:00:0023:59:59的日期提供時間戳

與上述類似,這可能適合您:

SELECT * FROM tbl_products
WHERE date_added between ? + interval '0' second and ? + interval '86399' second

提供兩次日期。


簡單(但效率低下 - 不會使用索引)方式:

SELECT * FROM tbl_products WHERE date(date_added) = ?

提供日期作為參數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM