首頁 > 資料庫 > mysql教程 > 如何修復 MySQL 中的「非法混合排序規則」錯誤?

如何修復 MySQL 中的「非法混合排序規則」錯誤?

Susan Sarandon
發布: 2024-12-13 06:14:13
原創
956 人瀏覽過

How to Fix the

解決MySQL 中的「非法混合排序規則」錯誤

當嘗試執行涉及SELECT 語句的MySQL 儲存過程時,您可以遭遇到錯誤“非法混合排序規則”。出現此問題的原因是表格和要比較或排序的欄位的排序規則有差異。

表格的排序規則為 latin1_general_ci,而 WHERE 子句中的欄位使用 latin1_general_cs。這些不相容的排序規則會導致錯誤。

解決方案1:使用COLLATE 子句指定共享排序規則

使用COLLATE 子句為列中的列指定通用排序規則查詢:

WHERE column1 COLLATE latin1_general_ci = column2 COLLATE latin1_general_ci
登入後複製

解決方案2:使用BINARY運算符

或者,您可以使用BINARY 運算符,它將字符串視為二進制數據:

WHERE BINARY column1 = BINARY column2
登入後複製

注意:

使用BINARY 運算子時,請記住,它會停用該列上的任何潛在索引問題。

有關整理相關主題的全面信息,請參閱 Eggyal 在類似討論中提供的極具洞察力的回复。

以上是如何修復 MySQL 中的「非法混合排序規則」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板