MySQL存儲過程中sql語句條件的in無效問題及解決
MySQL存儲過程中sql語句條件的in無效
存儲過程中,sql語句條件的 in 無效,必須用mysql的函數(shù)或者自己寫一個(gè)函數(shù)處理組裝條件。
正常寫法
select * from table t where t.a in (1,2,3,4);
當(dāng)在寫存儲過程in里面的列表用個(gè)傳入?yún)?shù)代入的時(shí)候,就需要用到如下方式:
主要用到find_in_set函數(shù)
select * from table t where find_in_set(t.a,'1,2,3,4');
SQL中IN和NOT IN的用法注意事項(xiàng)
(1)在使用IN 和 NOT IN 時(shí)要注意 IN范圍中有NULL和空值的情況
(2)盡量不要用IN和NOT IN的方式而是轉(zhuǎn)換為LEFT JOIN的形式
(3)在where語句中考慮NULL的同時(shí)要考慮空字符串的情況
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL存儲表情時(shí)報(bào)錯(cuò):java.sql.SQLException: Incorrect string value:‘
這篇文章主要給大家介紹了關(guān)于MySQL存儲表情時(shí)報(bào)錯(cuò):java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\xA9\x0D\x0A...'的解決方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。2018-04-04
教你使用MySQL Shell連接數(shù)據(jù)庫的方法
在有些情況下我們需要使用命令行方式連接MySQL數(shù)據(jù)庫,這時(shí)可以使用MySQL官方提供的命令行工具M(jìn)ySQL Shell,今天通過本文給大家介紹下mysql Shell連接數(shù)據(jù)庫的方法,感興趣的朋友一起看看吧2022-04-04
MySQL安裝常見報(bào)錯(cuò)處理方法總結(jié)大全
MySQL數(shù)據(jù)庫在安裝或卸載的過程中,常常會出現(xiàn)一些錯(cuò)誤,這是件讓我們頭疼的事,下面這篇文章主要給大家介紹了關(guān)于MySQL安裝常見報(bào)錯(cuò)處理方法的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07
MySQL?讀寫分離的實(shí)現(xiàn)邏輯及步驟詳解
文章介紹了MySQL讀寫分離的架構(gòu)、實(shí)現(xiàn)步驟、可能遇到的問題及解決方案,并總結(jié)了優(yōu)化點(diǎn),以提高M(jìn)ySQL數(shù)據(jù)庫的性能和可擴(kuò)展性,感興趣的朋友一起看看吧2025-02-02
MySQL 億級數(shù)據(jù)導(dǎo)入導(dǎo)出及遷移筆記
上周被安排做了一個(gè)MySQL億級數(shù)據(jù)的遷移,特此記錄一下,導(dǎo)入和導(dǎo)出是兩個(gè)過程,本文想詳細(xì)的介紹一下具體的使用,感興趣的小伙伴們可以參考一下2021-06-06
Mysql使用on update current_timestamp問題
這篇文章主要介紹了Mysql使用on update current_timestamp問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03

