首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何简化此SQL查询2

如何简化此SQL查询2
EN

Stack Overflow用户
提问于 2018-04-28 15:03:09
回答 1查看 31关注 0票数 0

我有一个用于检查用户id是否存在的MySQL查询,我试图简化这段代码,或者至少使其更好。

代码语言:javascript
运行
复制
mysql_query("SELECT * FROM levels WHERE 
                ('0000000000000.00000000' != (uid1)) AND uid1 IS NOT NULL 
            AND ('0000000000000.00000000' != (uid2)) AND uid2 IS NOT NULL 
            AND ('0000000000000.00000000' != (uid3)) AND uid3 IS NOT NULL 
            AND ('0000000000000.00000000' != (uid4)) AND uid4 IS NOT NULL 
            AND level_unique_id = '$level_unique_id'");

例如,如果uid3不是null而不是0000000000000.00000000,那么:

代码语言:javascript
运行
复制
mysql_query("UPDATE `levels` SET `uid3` = '$UNIQUE_ID'  WHERE `levels`.`level_unique_id` = '$level_unique_id'");

如何简化此SQL查询?

描述1:,我知道level_unique_id,但是我想更新uid1uid2uid3uid4,如果值0000000000000.00000000不在任何列中

EN

回答 1

Stack Overflow用户

发布于 2018-04-28 15:31:59

可以发布完整的数据库结构。如果你需要找到水平。然后,您应该对查询进行少量更改,以获得结果。

不需要将其作为字符串0.0000000进行比较,然后将其转换为Int ** SELECT *,从以下级别(强制转换为Int (uid1 as Int)!=0)和uid1不为空(uid1 as Int)!=0和uid2不是空和(uid1 as Int)!=0)和uid3是非空和(uid1 as Int)!=0和uid4不为空和level_unique_id = '1‘。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50077889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档