首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >TOP 3的SQL语句

TOP 3的SQL语句
EN

Stack Overflow用户
提问于 2014-10-10 11:04:17
回答 2查看 62关注 0票数 0

尝试编写一条SELECT语句,该语句将从表tblProducts中选择前3行,其中供应商ID类似于输入数据的前两个字符。我决定使用IN操作,但不起作用。我也尝试过在IN上使用LIKE,但是我一直收到下面这行的错误信息。我的逻辑是错的吗?

代码语言:javascript
运行
复制
SELECT TOP 3
FROM tblProducts
WHERE VendorID IN UCase(Me.txtProdID.Text)
EN

回答 2

Stack Overflow用户

发布于 2014-10-10 11:14:09

我认为在top 3之后,您会错过列的定义。试着这样做:

代码语言:javascript
运行
复制
SELECT TOP 3 *
FROM tblProducts
WHERE VendorID = UCase(Me.txtProdID.Text)

另外,如果你想使用IN,我认为你需要使用括号。我将其更改为=

编辑,在重新阅读WHERE the Vender ID is like the first two characters of the entered data.之后,您可能希望将LIKELEFT (或SUBSTRING)一起使用,而不是将IN用于您的WHERE标准:

代码语言:javascript
运行
复制
WHERE VendorID like Left(UCase(Me.txtProdID.Text),2) + '%'

此外,您可能不需要ucase --这取决于您的数据库排序规则。

票数 2
EN

Stack Overflow用户

发布于 2014-10-10 11:09:39

试着使用括号,.text也可能会导致问题,添加.toString(),或者由于它是一个ID,可能是toInt()

代码语言:javascript
运行
复制
SELECT TOP (3)
FROM tblProducts
WHERE VendorID like UCase(Me.txtProdID.Text.toInt())
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26291315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档