91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

荥阳市| 张家口市| 尼勒克县| 上犹县| 泰州市| 闸北区| 迁安市| 泽库县| 南雄市| 嵊州市| 两当县| 南召县| 延川县| 曲阜市| 双江| 五河县| 松桃| 双城市| 连城县| 沙坪坝区| 额尔古纳市| 义乌市| 化州市| 桐梓县| 通江县| 图木舒克市| 海城市| 哈巴河县| 桃园县| 道真| 平武县| 清远市| 平顶山市| 满城县| 和政县| 东平县| 华阴市| 望谟县| 西丰县| 武宣县| 昔阳县|