MySQL提供了一些指定被搜索的列的函數(shù),這些函數(shù)可以幫助用戶更加精準(zhǔn)地搜索他們需要的數(shù)據(jù)。
SELECT column_name1 FROM table_name WHERE column_name2 LIKE '%search_key%';
在這個(gè)SQL語句中,column_name1
和column_name2
都是要搜索的列。
SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'table_name' AND COLUMN_NAME LIKE '%search_key%';
上面的代碼是用來搜索table_name
表中列名包含search_key
的列。
SELECT * FROM table_name WHERE MATCH (column_name1, column_name2) AGAINST ('search_key');
這個(gè)語句使用MATCH AGAINST
函數(shù)來搜索column_name1
和column_name2
中包含search_key
的記錄。
SELECT * FROM table_name WHERE column_name1 REGEXP 'search_key' OR column_name2 REGEXP 'search_key';
在上面的代碼中,使用了REGEXP
函數(shù)來搜索包含search_key
的列。