gpt4 book ai didi

sql - 在 Access 查询中将文本字段转换为日期/时间字段不起作用

转载 作者:行者123 更新时间:2023-12-02 20:25:43 28 4
gpt4 key购买 nike

我正在使用 Access 数据库和 vb6。我的表有一个名为“InvoiceDate”的字段,它是一个文本字段。我无权修改数据库。所以我想我唯一的选择是将查询中的文本字段更改为日期/时间字段。我找到了几种方法来做到这一点。它们如下。

  • 格式(发票日期,“yyyy/mm/dd”)
  • (DateSerial(左(发票日期,4),中(发票日期,5,2),右(发票日期,2)) #2015/01/01# 和 #2016/01/01#)) 之间
  • DateValue(InvoiceDate, "yyyy/mm/dd")
  • CDate(发票日期, "yyyy/mm/dd")

但这4种方法都不起作用。我想不通这个。

我使用的查询如下

SELECT Invoice.InvoiceDate, InvoicedProduct.InvoiceType, Invoice.InvoiceStatus, 
Invoice.RetailerID, Invoice.DailySalesID, Invoice.RepID,
InvoicedProduct.Quantity, InvoicedProduct.UnitRate,
InvoicedProduct.TotalItemValue
FROM Invoice
INNER JOIN InvoicedProduct
ON (Invoice.DailySalesID = InvoicedProduct.DailySalesID)
AND (Invoice.RepID = InvoicedProduct.RepID)
AND (Invoice.InvoiceID = InvoicedProduct.InvoiceID)
WHERE (((InvoicedProduct.ProductID)='9010001174130.4')
AND (DateValue(Invoice.InvoiceDate) Between #2015/01/01# And #2016/01/01#))
GROUP BY Invoice.InvoiceDate, InvoicedProduct.InvoiceType, Invoice.InvoiceStatus,
Invoice.RetailerID, Invoice.DailySalesID, Invoice.RepID,
InvoicedProduct.Quantity, InvoicedProduct.UnitRate,
InvoicedProduct.TotalItemValue
HAVING (((InvoicedProduct.InvoiceType)='Invoice' OR (InvoicedProduct.InvoiceType)='Sound')
AND ((Invoice.InvoiceStatus)='VALID'))
ORDER BY Invoice.InvoiceDate;

这给了我错误“条件表达式中的数据类型不匹配”

我的 InvoiceDate 字段中包含以下两种类型

2016/01/04 10:00:上午和2016/01/20 08:25 PM

唯一的区别是时间后面的冒号

Following two types are include in my InvoiceDate Field

请帮忙。谢谢。

最佳答案

您的标准:

DateValue(Invoice.InvoiceDate) Between #2015/01/01# And #2016/01/01#

正确,因此错误消息表明,InvoiceDate 中的一个或多个文本日期不代表有效日期,例如 2015-06-31 或 Null。

运行查询来检查这一点:

Select *, IsDate(InvoiceDate) As ValidDate From Invoice

并查看 ValidDate 的任何值是否为 False。

忽略多余的冒号:

DateValue(Replace(Invoice.InvoiceDate, ": ", " ")) Between #2015/01/01# And #2016/01/01#

关于sql - 在 Access 查询中将文本字段转换为日期/时间字段不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50037320/

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