sql - MySQL IN 运算符

标签 sql mysql database t-sql stored-procedures

http://pastebin.ca/1946913 当我在程序中写入“IN(1,2,4,5,6,7,8,9,10)”时,我得到正确的结果,但是当我在“IN”中添加 id 变量时,结果是不正确。我在mysql上做了一个函数,但它仍然不起作用,我该怎么办?

最佳答案

字符串(广义上,变量值)不会在语句中插入。 vKatID IN (id) 检查 vKatID 是否等于列出的任何值,只有一个:id 的值。您可以使用 PREPARE and EXECUTE 创建动态查询插入值:

set @query = CONCAT('SELECT COUNT(*) AS toplam
                    FROM videolar
                    WHERE vTarih = CURDATE() AND vKatID IN (', id, ') AND vDurum = 1;') 
PREPARE bugun FROM @query;
EXECUTE bugun;

关于sql - MySQL IN 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3774260/

相关文章:

java - 当 JPA 实体不应准确反射(reflect)数据库上的物理模型时

php - Laravel 与多个外键和数据透视表的关系

mysql - 如何标准化sql查询的结果以及如何将外键引用到两列

php - 无法使用 PHP 将日期时间值插入到 MySQL 表中

javascript - 聊天应用程序如何在没有重复 ajax 调用的情况下工作?

MySQL:交叉匹配来自两个不同列的记录

mysql - 在sql中可以只显示a小于b的行吗?

sql - 许多单独更新与一次大型更新的速度

php - 根据数组中的顺序获取Mysql数据

c# - 如何发送电子邮件?