亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MYSQL的varchar與數值舉例分析

發布時間:2021-12-04 14:25:11 來源:億速云 閱讀:209 作者:iii 欄目:云計算

本篇內容主要講解“MYSQL的varchar與數值舉例分析”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“MYSQL的varchar與數值舉例分析”吧!

事件起源

好了來說具體場景,被同事叫去看一個奇怪的SQL。SQL語句很簡單,大概就是查詢某些字段有一些查詢條件而已。其中比較重要的一個條件就是 「where xx!=0」。說是很奇怪,為什么!=0就查詢到的結果就是10條。但是!=1 查詢出來的結果就是100條。

SELECT A,B,C FROM TABLE WHERE A!=0
res:10 
SELECT A,B,C FROM TABLE WHERE A!=0
res:100
 

下面我們簡單的來幾條數據看一下狀況。

狀況復現

「所有數據」

MYSQL的varchar與數值舉例分析  

「!=0」

MYSQL的varchar與數值舉例分析  

當時就是直接拿到了這樣的結果。 

分析狀況

當時看到這個問題之后我也很驚奇,不等于0 不應該把所有的數據都拿到么。為什么會出現這樣的情況呢?

簡單考慮了一下,字段的類型為 varchar型,而查詢條件給予的是個數值型,那么問題應該就是出現在這里。

數據庫在基于查詢條件進行檢索的時候會如何進行操作呢?
答案就是轉換成相同的類型。

那么對于這次的問題是字段轉換成int類型還是int轉換成varchar類型呢?其實簡單的看查詢結果就知道了。如果查詢條件‘0’轉換成了varchar那么就應該獲取到全部的數據。但是現在的狀況是獲取到的數據不夠。那結論就是數據庫把要查詢的字段轉換成了數值型。
那么我們把app字段進行轉換一下試試。

MYSQL的varchar與數值舉例分析  

從結果上我們可以看到 app 轉換之后的結果只有 0123asfj 轉換成了123,其他都是0。所以在查詢條件為 ‘!=0’ 的時候就只能查詢到一條結果。

到此,相信大家對“MYSQL的varchar與數值舉例分析”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

儋州市| 寿宁县| 平昌县| 开平市| 满城县| 新建县| 闽侯县| 台州市| 句容市| 铜山县| 玉龙| 清涧县| 威海市| 邵武市| 河东区| 筠连县| 南康市| 察雅县| 义马市| 大港区| 大安市| 富锦市| 开封市| 黄陵县| 长治市| 东丰县| 黄梅县| 中方县| 通海县| 新巴尔虎右旗| 启东市| 孟州市| 虞城县| 即墨市| 湘潭市| 安福县| 青阳县| 南丰县| 哈巴河县| 贵定县| 谷城县|