MySQL 的 LIKE 運算子和等於 (=) 運算子之間有什麼顯著區別?
我們已經瞭解了用於從 MySQL 表中提取資料的 MySQL SELECT 命令。我們還可以使用稱為 WHERE 子句的條件子句來選擇所需記錄。
當我們需要進行精確匹配時,帶有“等於”符號 (=) 的 WHERE 子句效果很好。例如,“tutorial_author = 'Sanjay'”。但是,我們可能需要篩選所有 tutorial_author 名稱包含“jay”的結果。這可以使用 WHERE 子句結合 MySQL LIKE 運算子來處理。
如果 MySQL LIKE 運算子不使用萬用字元,則 LIKE 運算子與 WHERE 子句一起使用的等於號完全相同。
示例
mysql> Select * from Student Where Name LIKE 'Harshit'; +------+---------+---------+----------+--------------------+ | Id | Name | Address | Subject | year_of_admission | +------+---------+---------+----------+--------------------+ | 15 | Harshit | Delhi | Commerce | 2009 | +------+---------+---------+----------+--------------------+ 1 row in set (0.00 sec) mysql> Select * from Student Where Name = 'Harshit'; +------+---------+---------+----------+--------------------+ | Id | Name | Address | Subject | year_of_admission | +------+---------+---------+----------+--------------------+ | 15 | Harshit | Delhi | Commerce | 2009 | +------+---------+---------+----------+--------------------+ 1 row in set (0.00 sec)
除了具有萬用字元 % 和 _ 的區別之外,LIKE 和 = 運算子之間的一個顯著區別在於 LIKE 運算子不忽略尾隨空格,而 = 運算子忽略尾隨空格。
示例
mysql> Select * from Student Where Name = 'Harshit '; +------+---------+---------+----------+--------------------+ | Id | Name | Address | Subject | year_of_admission | +------+---------+---------+----------+--------------------+ | 15 | Harshit | Delhi | Commerce | 2009 | +------+---------+---------+----------+--------------------+ 1 row in set (0.00 sec) mysql> Select * from Student Where Name LIKE 'Harshit '; Empty set (0.00 sec)
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP