我有一个保存购买日期和客户名称的表,如下所示:
|Name | Item | Purchase Date |
|Sam |Soap | 03-09-2018 |
|Edwin |Coffee| 28-08-2018 |
|Gary |Tea | 24-09-2018 |
|Sam |Milk | 09-10-2018 |
|Tiffany|Sugar | 17-10-2018 |
|Sam |Cocoa | 30-10-2018 |
例如,我想得到如下输出:
|Sam |Milk | 09-10-2018 |
|Sam |Cocoa | 30-10-2018 |
所以代码应该是这样的:
"Select * from purchase_table where customer_name =
'"+customer_name_text+"' AND purchase_date BETWEEN
'"+from_date.getDate()+"' AND
'"+until_date.getDate()+"' ";
其中customer\u name\u text是用户的输入,用于查找特定的客户名称,from\u date也是用户的输入,用于在截止日期jdatechooser之间设置一个范围日期,该日期介于2018年10月1日至2018年10月31日之间
但不是像上面那样的输出,输出似乎是错误的,它是这样的:
|Sam |Soap | 03-09-2018 |
|Sam |Milk | 09-10-2018 |
|Sam |Cocoa | 30-10-2018 |
任何建议都将被接受
6条答案
按热度按时间wbgh16ku1#
是的,我也建议,给日期一个格式。例如:截止日期('2018年12月3日','dd mon yyyy hh24:mi:ss')
从purchase(采购)表中选择*,其中customer(客户)名称='sam',purchase(采购)日期介于to(采购)日期('2018年10月1日','dd mon yyyy hh24:mi:ss')和to(采购)日期('2018年10月31日','dd mon yyyy hh24:mi:ss');
ibrsph3r2#
尝试以下sql查询以获取日期范围内的数据:
rur96b6h3#
您需要使用这样的日期格式“2012-10-01 00:00:00”(yyyy-mm-dd hh:mm:ss)
参见下面的示例,
xurqigkl4#
您可以使用以下查询:
jexiocij5#
我建议您检查sql数据库中的默认日期格式sql的deafult格式是:
日期-格式YY-mm-dd。日期时间-格式:yyyy-mm-dd hh:mi:ss。smalldatetime-格式:yyyy-mm-dd hh:mi:ss。时间戳格式:一个唯一的数字。
也可以更改日期格式或以默认日期格式传递日期
huwehgph6#
您需要使用这样的日期格式“2012-10-01 00:00:00”(yyyy-mm-dd hh:mm:ss)
参见下面的示例,
因为,sql只接受这样的日期格式:(yyyy-mm-dd hh:mm:ss)
1) 接受用户提供的日期,然后编写一个函数,使用
getDate()
功能就是这样。"Select * from purchase_table where customer_name = 'sam' AND purchase_date BETWEEN '2012-10-01 00:00:00' AND '2012-10-31 00:00:00' ";