九色91_成人精品一区二区三区中文字幕_国产精品久久久久一区二区三区_欧美精品久久_国产精品99久久久久久久vr_www.国产视频

Hello! 歡迎來到小浪云!


MySQL 中 IS TRUE 和 =True 查詢結果不一致的原因是什么?


avatar
小浪云 2024-11-10 191

MySQL 中 IS TRUE 和 =True 查詢結果不一致的原因是什么?

mysql 中 is true 和 =true 結果不一致的原因

mysql 中查詢數據時,使用 is true 和 =true 作為條件會導致不同的結果。這是因為這兩個操作具有不同的語義:

  • = 執行的是數值比較。true 在 mysql 中表示為 1,但 is_deleted 列是一個 tinyint(1) 類型,它的取值范圍為 0-255。因此,=true 實際上是將 is_deleted 與 1 進行比較。
  • is true 執行的是真假判斷。在 mysql 中,非零值都表示 true,而 0 表示 false。因此,is true 將 is_deleted 為非零(即不等于 0)的記錄視為 true。

示例

已知表結構如下:

create table user (   id int not null auto_increment,   is_deleted tinyint(1) not null default 0,   primary key (id) );
登錄后復制

插入的示例數據:

insert into user (is_deleted) values (127); insert into user (is_deleted) values (0);
登錄后復制

查詢結果

執行以下查詢語句:

select * from `user` where is_deleted is true;
登錄后復制

結果:

+----+------------+ | id  | is_deleted | +----+------------+ | 1   | 127        | +----+------------+
登錄后復制

執行以下查詢語句:

select * from `user` where is_deleted = true;
登錄后復制

結果:

空集
登錄后復制

可見,使用 is true 查詢到了 is_deleted 為 127(非 0)的記錄,而使用 =true 未查詢到任何記錄。

相關閱讀

主站蜘蛛池模板: 极情综合网 | 91精品入口蜜桃 | 成人久久久久久久久 | 亚洲综合区 | 国产精品视频免费播放 | 亚洲成人久久久 | 欧美久久一级特黄毛片 | 国产精品一区二区久久 | av超碰 | 精品久久久久久亚洲综合网 | 欧美日产国产成人免费图片 | 亚洲欧美激情网 | 日韩www | 欧产日产国产精品国产 | 亚洲精品一区二区三区蜜桃久 | 九九九久久国产免费 | 中文字幕在线观看一区二区 | 国产成人综合久久 | 欧美日韩国产一区二区三区 | 超级黄色一级片 | av在线成人| 欧美日本在线 | 国产欧美精品在线观看 | 午夜影院网站 | 天天干视频网 | 久久九九99 | 人人干超碰 | 一区二区三区视频在线 | 在线观看中文字幕dvd播放 | 亚洲成人免费视频在线 | 欧美一级在线观看 | 国产美女在线观看 | 91久久精品国产91久久性色tv | 成年人视频免费在线观看 | 国内久久 | 久久久久久久一区二区三区 | 亚洲综合无码一区二区 | 日本视频在线播放 | 成人动漫一区二区 | 欧美综合视频 | 中文字幕在线免费观看 |