0

我有一个例程,它返回一个特定邮政编码这么多英里内的邮政编码列表。我可以调用例程并获取结果列表:

CALL Location.GetNearByZipCodes(28078,5);

结果集:

28031,28070,28078,28205

我想做一个查询,它选择带有例程输出的所有记录作为 where 子句的一部分:

select * from Location where zipcode in (Location.GetNearByZipCodes(28078,5));

但是,这不起作用。是否可以将函数的结果用作 where 子句的一部分?如果是这样,正确的语法是什么?

上面的选择查询失败:

错误代码 1305:Location.GetNearByZipCodes 不存在。

在此先感谢您的帮助!

4

1 回答 1

1

尝试这个:

"select * from Location where zipcode in (".Location.GetNearByZipCodes(28078,5).");"

还要确保此函数返回一个带有以逗号分隔的邮政编码的字符串,

您还可以Location.GetNearByZipCodes()在查询之前调用并将返回的值存储在一个变量中,然后按照您习惯的方式在查询中使用该变量。

于 2013-06-27T16:59:23.490 回答