SQL模糊查詢時LIKE怎樣跟變數

2021-10-19 12:38:16 字數 970 閱讀 7841

一般模糊查詢語句如下:

select 字段 from 表 where 某欄位 like 條件
其中關於條件,sql提供了四種匹配模式:

% :表示任意0個或多個字元。可匹配任意型別和長度的字元,有些情況下若是中文,請使用兩個百分號(%%)表示。

比如 select * from [user] where u_name like '%三%'
如何將%三%的值作為變數使用?

"select * from fbapi where shuju like '%{}%'"

.format

(變數名)

下面用python作為示例

import pymysql

conn = pymysql.connect(

host=

'localhost'

, port=

3306

, user=

'使用者名稱'

, passwd=

'密碼'

, db=

'資料庫名'

, charset=

'utf8'

)cur = conn.cursor(

)text=

'內容'

sql =

"select * from 表名字 where 欄位名 like '%{}%'"

.format

(text)

cur.execute(sql)

# 使用execute方法執行sql語句

results = cur.fetchone(

)# fetchall()為查詢所有

print

(results)

#關閉資料庫

conn.close(

)

SQL 模糊查詢LIKE

like操作符 用於where子句中搜尋列中指定模式。語法 select columnname s from tablename where columnname like pattern 示例 1.select from tablename where columnname like n 查詢co...

like 模糊查詢

sql 模糊查詢 逗號,在sql中like中不需要轉義,但是如果 在sql中的某個欄位值用 分隔資料,需要獲取資料的時候直接把 拆分成資料,獲得乙個資料的list。例如 需要查詢某欄位是否包含乙個值,111是否存在於1111,2111,1112,1121,1113這個欄位中 因為根據 逗號分開,要求...

like模糊查詢

逗號,在sql中like中不需要轉義,但是如果 在sql中的某個欄位值用 分隔資料,需要獲取資料的時候直接把 拆分成資料,獲得乙個資料的list。例如 需要查詢某欄位是否包含乙個值,111是否存在於1111,2111,1112,1121,1113這個欄位中 因為根據 逗號分開,要求的答案是 不在字段...