我希望在列行中找到最接近5的数字,然后将它排序在最靠近顶部。
这是我得到的......
SELECT TOP 1 * FROM Technicians WHERE Zone=15 ORDER BY Zone DESC
在vb中执行此操作并收到错误。
标准表达式中的数据类型不匹配。
答案 0 :(得分:3)
这是一个 MS Access 错误,我猜你的Zone
字段实际上并不是数字。
尝试WHERE Zone='15'
答案 1 :(得分:2)
要订购numeric
列,使列表顶部的列最接近5
,您需要一个函数来告诉您值与5的接近程度。ABS(value - 5)
应该为你做到这一点。
这给出了以下条款......
ORDER BY
ABS(tableValue - 5) ASCENDING
但请注意,您的错误消息表明您的Zone
字段不是数字。这意味着您需要将值转换为数字类型,或将字段本身更改为数字类型。