卧草泥马 发表于 2020-7-6 13:31:51

又来问技术问题了,还是关于SQL查询

本帖最后由 卧草泥马 于 2020-7-6 14:50 编辑

已经解决,只要不用not in就OK,换成其他方法
================================
发现一个很诡异的事情

$str='4,5'

select count(id) as num from users where staus not in ($str)

然后我取出来
$rows=mysql_fetch_assoc($rs);

$nums=$rows["num"];

最后 $nums居然有是空!!!!

我直接在 phpmyadmin 里面SQL查询是可以看到 num 的值的,为什么取不出来?!!!

然后我发现,只要删掉not in 就正常了

这是怎么回事?!

如果不行,not in应该怎么替换

ceoe 发表于 2020-7-6 14:11:28

while($rows){

}

coffee 发表于 2020-7-6 14:16:50

你这个SQL拼的有问题。
你最好把你运行的sql打出来。看你拼的对不对.
不过许说回来了,现在用SQL做项目还是很累的。DOA 框架很多。
你打出来的SQL看看是不是这样.
select count(xxx) as num from tablewhere status not in (4,5);

卧草泥马 发表于 2020-7-6 14:52:32

coffee 发表于 2020-7-6 14:16
你这个SQL拼的有问题。
你最好把你运行的sql打出来。看你拼的对不对.
不过许说回来了,现在用SQL做项目还 ...

你说得对,如果重新开发,肯定用框架了。

只是这破站一开始就是写源生的,然后完全没有换框架的动力,反正也就我一个人看,哪个页面不对,改哪里:(

零辰三点 发表于 2020-7-6 15:00:41

看看staus是什么字段,字符串还是数字数字可以lz用,字符串不能这样用

not in (‘4’,'5’)

iceteaa 发表于 2020-7-6 15:20:39

楼上说的对,staus必须是int字段
页: [1]
查看完整版本: 又来问技术问题了,还是关于SQL查询