gpt4 book ai didi

PHP mysql 选择日期范围

转载 作者:可可西里 更新时间:2023-11-01 07:47:49 25 4
gpt4 key购买 nike

我有一个发票类型的表单提交,每个提交都有一个日期,所以我在 mysql 数据库中创建了一个 varcha 日期字段来保存时间。时间格式类似于“2011-06-26”。现在我需要选择一个范围基于我数据库中的日期。我尝试了以下选项,但它们不显示任何结果,只显示空白页面,甚至没有错误。

我是否应该遵循一些将日期保存到我的数据库的特殊技术。如果是这样,请给我一些解释,因为我是 PHP 和 MYSQL 开发的新手。

SELECT * FROM table_name 
WHERE 'date'
BETWEEN UNIX_TIMESTAMP('2011-06-02') AND UNIX_TIMESTAMP('2011-06-25')




SELECT * FROM my_table
WHERE 'date'
BETWEEN CAST('2011-06-02' AS DATE) AND CAST('2011-06-25' AS DATE)";

这是我用来提取数据的

$result=mysql_query($query);
while($row=mysql_fetch_array($result)){
echo $row['tax']."<br>";
}

谢谢。

最佳答案

如果您使用 DATETIME 类型来存储您的日期,技巧就很简单。DATETIME 允许您存储日期和时间戳,但是如果仅指定日期,时间戳将存储为 00:00:00

我将向您展示一个简单的示例。

mysql> CREATE TABLE test_table(
id INT UNSIGNED AUTO_INCREMENT,
test_date DATETIME,
PRIMARY KEY (id));

mysql> INSERT INTO test_table(test_date)
VALUES('2011-06-26'), ('2011-05-14'), ('2011-05-02');

mysql> SELECT * FROM test_table;
+----+---------------------+
| id | test_date |
+----+---------------------+
| 1 | 2011-06-26 00:00:00 |
+----+---------------------+
| 2 | 2011-05-14 00:00:00 |
+----+---------------------+
| 3 | 2011-05-02 00:00:00 |
+----+---------------------+

mysql> SELECT * FROM test_table WHERE test_date
BETWEEN '2011-05-01' AND '2011-05-31';
+----+---------------------+
| id | test_date |
+----+---------------------+
| 2 | 2011-05-14 00:00:00 |
+----+---------------------+
| 3 | 2011-05-02 00:00:00 |
+----+---------------------+

就是这样。

关于PHP mysql 选择日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6482908/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com