作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图从我的代码中将字符串值传递给存储过程,但它没有正确执行查询。以下是存储过程的代码。
我想将多个值传递给存储过程,例如“2,3,4”。但是当我这样做时,它只需要 2 次并抛出错误。
CREATE PROCEDURE `USP_INSERT_PROCESSED_ETC_RECORDS_TO_MAIN_TABLE`
(
IN RECORD_ID VARCHAR(20)
)
BEGIN
SELECT * FROM TX_TOLL_TRANSACTION_RECORD_DETAIL_STAGING
WHERE ID IN (RECORD_ID);
END
最佳答案
你必须使用 FIND_IN_SET()函数而不是 IN 运算符
试试这个:
CREATE PROCEDURE `USP_INSERT_PROCESSED_ETC_RECORDS_TO_MAIN_TABLE`
(
IN RECORD_ID VARCHAR(20)
)
BEGIN
SELECT * FROM TX_TOLL_TRANSACTION_RECORD_DETAIL_STAGING
WHERE FIND_IN_SET(ID, RECORD_ID);
END
关于MYSQL:存储过程未正确执行带有 'IN' 子句的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27981796/
我是一名优秀的程序员,十分优秀!