请问在MySQL查询中,如何判断两个字段是否相等,即a是否等于b?
- 内容介绍
- 文章标签
- 相关推荐
本文共计357个文字,预计阅读时间需要2分钟。
背景:今天看到一個MySQL操作的大概結構,比較有意義。以下是簡化版的描述:
操作:取得字符串2021019180754的前8位,並與當天日期進行比較。結構:select subString('2021019180754',1,8) cur_date;
背景今天看到一个mysql比较有意思的操作大概是这样的结构selectsubString(20221019180754,1,8)curdate背景
今天看到一个mysql比较有意思的操作大概是这样的结构 select subString("20221019180754",1,8) curdate() 0; 以前从来没见过这样的写法很好奇这是什么操作特地研究一下
分析步骤
1. 先讲上面的语句放到mysql里面执行一下看看会返回什么结果
返回了一个0
2. 执行步骤拆解
执行select subString("20221019180754",1,8);返回了20221019
执行select curdate();返回了2022-10-19
执行select subString("20221019180754",1,8) curdate();返回了1
思考那到底是相等返回1还是不相等返回1呢
验证一下执行select subString("20991019180754",1,8) curdate();语句年份不一样返回的结果是0
总结
那也就是说当两边结果相等的时候会返回1不相等的时候返回0日期格式也会自动格式化为一致的类型对比。
本文共计357个文字,预计阅读时间需要2分钟。
背景:今天看到一個MySQL操作的大概結構,比較有意義。以下是簡化版的描述:
操作:取得字符串2021019180754的前8位,並與當天日期進行比較。結構:select subString('2021019180754',1,8) cur_date;
背景今天看到一个mysql比较有意思的操作大概是这样的结构selectsubString(20221019180754,1,8)curdate背景
今天看到一个mysql比较有意思的操作大概是这样的结构 select subString("20221019180754",1,8) curdate() 0; 以前从来没见过这样的写法很好奇这是什么操作特地研究一下
分析步骤
1. 先讲上面的语句放到mysql里面执行一下看看会返回什么结果
返回了一个0
2. 执行步骤拆解
执行select subString("20221019180754",1,8);返回了20221019
执行select curdate();返回了2022-10-19
执行select subString("20221019180754",1,8) curdate();返回了1
思考那到底是相等返回1还是不相等返回1呢
验证一下执行select subString("20991019180754",1,8) curdate();语句年份不一样返回的结果是0
总结
那也就是说当两边结果相等的时候会返回1不相等的时候返回0日期格式也会自动格式化为一致的类型对比。

