LIKE 演算子は、WHERE 句の列内の指定されたパターンを検索するために使用されます。
文法:
SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern
pattern ここに指定されたテンプレートが配置されます。ここでは「%」が使用されます。前に配置される場合はワイルドカード
% とも呼ばれます。条件の、つまり... で終わるデータをチェックします; 例: %李
% 条件の後に配置すると、... で始まるデータをチェックします; 例: 李%
%条件の前後に存在する場合、含まれるデータがチェックされます; 例: %李%
#ちょっとした知識ポイント:
#ERROR 1064 (42000): SQL 構文にエラーがあります。MySQL サーバーのバージョンに対応するマニュアルで、行 11064 の「%z」付近で使用する正しい構文を確認してください。エラーは LIKE クエリ (構文エラー) です。ワイルドカードの前後に引用符がないため、エラーが報告されます...正しい表示、例: "%李%"
例 1: ターミナルは SQL を実行し、それを WHERE 句で使用します。 LIKE
アドレスが Hang で始まる人の情報をクエリしますroot@7c6316b19d80:/# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 140 Server version: 5.6.51 MySQL Community Server (GPL) mysql> mysql> select * from test_user where address like "Hang%"; +----+--------+-------------+----------+ | id | name | mobile | address | +----+--------+-------------+----------+ | 3 | python | 18856565858 | Hangzhou | | 4 | java | 17756565858 | Hangzhou | | 5 | php | 15556565858 | Hangzhou | | 6 | c# | 17748484142 | Hangzhou | +----+--------+-------------+----------+ 4 rows in set (0.00 sec) mysql>
mysql> select * from test_user where address like "%u"; +----+--------+-------------+----------+ | id | name | mobile | address | +----+--------+-------------+----------+ | 3 | python | 18856565858 | Hangzhou | | 4 | java | 17756565858 | Hangzhou | | 5 | php | 15556565858 | Hangzhou | | 6 | c# | 17748484142 | Hangzhou | +----+--------+-------------+----------+ 4 rows in set (0.00 sec) mysql>
で終わる例 2: Python スクリプトを使用して、LIKE
アドレスに z 文字が含まれる人事情報をクエリしますimport pymysql # 连接数据库 connection = pymysql.connect(host="localhost", user="root", password="123456", database="testing", port=3306, charset="utf8", cursorclass=pymysql.cursors.DictCursor) try: with connection: with connection.cursor() as cursor: sql = """ SELECT * FROM test_user WHERE address LIKE "%z%"; """ cursor.execute(sql) result = cursor.fetchall() for i in result: print(i) except pymysql.err.MySQLError as _error: raise _error
{"id": 3, "name": "python", "mobile": "18856565858", "address": "Hangzhou"} {"id": 4, "name": "java", "mobile": "17756565858", "address": "Hangzhou"} {"id": 5, "name": "php", "mobile": "15556565858", "address": "Hangzhou"} {"id": 6, "name": "c#", "mobile": "17748484142", "address": "Hangzhou"} Process finished with exit code 0
try: with connection: with connection.cursor() as cursor: sql = """ SELECT * FROM test_user WHERE address NOT LIKE "%z%"; """ cursor.execute(sql) result = cursor.fetchall() for i in result: print(i) except pymysql.err.MySQLError as _error: raise _error
{"id": 1, "name": "张三三", "mobile": "17748484141", "address": "浙江杭州"} {"id": 9, "name": "111", "mobile": "18847474549", "address": "浙江杭州"} Process finished with exit code 0
rree
以上がPythonでmysqlデータベースLIKE演算子を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。