SQL 函数和查询的不同结果

问题描述 投票:0回答:0

我有一个包含简单 Select Count 查询的 SQL 函数,在 SQL 模式下运行查询时它给出了正确的结果,而在函数中使用相同的查询时结果却不同。两种情况都在这里;

1。 SQL 查询

SELECT COUNT(*) FROM responses WHERE batch='2K18' AND degree_program='BSC' ;

2。 SQL 函数

BEGIN
       DECLARE ResponseCount INTEGER;
       SET ResponseCount = (SELECT COUNT(*) FROM responses WHERE batch=BATCH AND degree_program=DEGREEPROGRAM);
    RETURN (ResponseCount);
END

SQL查询的结果是正确的,而在SQL函数中使用时它只检查where子句的第二个参数。有什么可能的解决方案。

mysql sql function where-clause and-operator
© www.soinside.com 2019 - 2024. All rights reserved.