这可以在SQL中完成吗?

时间:2013-12-17 18:03:06

标签: sql sql-server

我正在尝试从SQL表中获取买方数量。似乎不想把信息从表中拉出来。

这就是我所拥有的:

我有一个变量:

newItemNum = 7962525;

我的sql数据库中有一个表,它有2列,itemnumber和buyernumber。

这是我的SQL语句:

strSQL = "select BuyerNumber from %buyer%_%supplier%xref where Itemnumber LIKE 'newItemNum%';"

表中的项目编号为:7962525电影集

它进入了桌面而没有找到任何东西。

3 个答案:

答案 0 :(得分:2)

LIKE 'newItemNum%' 

是字面匹配。你必须参数化newItemNum

LIKE @newItemNum + '%'

如果您不想使用params,请执行以下操作:

strSQL = "select BuyerNumber from %buyer%_%supplier%xref where Itemnumber LIKE '" + newItemNum + "%';"

编辑:

如果您正在动态获取表名,请使用以下内容:

var buyer="Costco";
var supplier="HomeDepot";
var newItemNum="123445656";

var strSQL = "select BuyerNumber from " +buyer+ "_" + supplier + "xref where Itemnumber LIKE '" + newItemNum + "%';"

答案 1 :(得分:1)

更改此

strSQL = "select BuyerNumber from %buyer%_%supplier%xref where Itemnumber LIKE 'newItemNum%';"

strSQL = "select BuyerNumber from %buyer%_%supplier%xref where Itemnumber LIKE '"+newItemNum+"%';"

答案 2 :(得分:0)

您的SQL字符串需要使用变量。替换

strSQL = "select BuyerNumber from %buyer%_%supplier%xref where Itemnumber LIKE 'newItemNum%';"

strSQL = "select BuyerNumber from %buyer%_%supplier%xref where Itemnumber LIKE @newItemNum + '%';"