【问题标题】:Data type Mismatch in criterion expression标准表达式中的数据类型不匹配
【发布时间】:2021-11-09 18:47:42
【问题描述】:

我对 SQL 完全陌生,并且在标准表达式中不断遇到数据类型不匹配的问题。试图找出在哪里进行更改。

SELECT AVG(Price)
FROM Book, OrderLine, [Order]
WHERE OrderDeliveryDate > '2016/05/05' and Order.OrderNo = OrderLine.OrderNo and Book.ISBN = OrderLine.ISBN and PercentageDiscount = 'NULL';

【问题讨论】:

  • 您能否分享更多详细信息,例如表格列,以及您对输出的期望?
  • 基于过滤条件,我认为如果你可以使用连接会更好。
  • 求2016年5月5日以后所有图书打折前的平均价格
  • 您能分享一下您正在使用的表格的详细信息吗?哪些表格有 'price' 、OrderDeliveryDate 、PercentageDiscount 列?
  • 图书 - ISBN、标题、类别、库存、价格、二手/OrderLine - OrderNo、OrderRank、ISBN、数量、百分比折扣/订单 - OrderNo、OrderDate、OrderDeliveryDate、CustomerID

标签: sql ms-access


【解决方案1】:

尝试使用INNER JOIN 语法和正确的数据类型:

SELECT 
    AVG(Price)
FROM 
    ([Order]
INNER JOIN
    OrderLine ON [Order].OrderNo = OrderLine.OrderNo)
INNER JOIN
    Book ON OrderLine.ISBN = Book.ISBN
WHERE 
    OrderDeliveryDate > #2016/05/05# And 
    PercentageDiscount Is Null;

【讨论】:

    猜你喜欢
    • 2013-12-23
    • 1970-01-01
    • 2021-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多