sql模糊查询用户名
时间: 2023-10-08 12:14:18 浏览: 119
模糊查询用户名的SQL语句可以如下所示:
```python
import pymssql
conn = pymssql.connect(host='数据库IP',user='用户名',password='密码',database='数据库名称')
cursor = conn.cursor()
keyword = f"%关键词%"
sql = 'select * from table where 字段名 like %s'
cursor.execute(sql, keyword)
result = cursor.fetchall()
for row in result:
print(row[0])
conn.close()
```
相关问题
xml sql里 用户信息等于工号或者用户信息模糊查询用户名
可以使用如下 SQL 语句实现:
```sql
SELECT * FROM users
WHERE user_id = '工号' OR user_name LIKE '%用户名%'
```
其中,`users` 表为存储用户信息的表,`user_id` 为用户工号列,`user_name` 为用户名列。`SELECT *` 表示查询所有列,`WHERE` 语句中使用 `OR` 操作符连接两个条件。第一个条件是 `user_id = '工号'`,表示查询工号为指定值的用户信息;第二个条件是 `user_name LIKE '%用户名%'`,表示查询用户名中包含指定关键词的用户信息。`LIKE` 操作符用于模糊匹配,`%` 表示任意字符。
xml 动态sql里 用户信息等于工号或者用户信息模糊查询用户名
在 MyBatis 的动态 SQL 中,可以使用 `<if>` 元素来根据条件动态拼接 SQL 语句。以下是一个实现用户信息等于工号或者用户信息模糊查询用户名的动态 SQL 示例:
```xml
<select id="getUserInfo" parameterType="map" resultType="User">
SELECT * FROM users
WHERE 1 = 1
<if test="user_id != null">
AND user_id = #{user_id}
</if>
<if test="user_name != null">
AND user_name LIKE CONCAT('%', #{user_name}, '%')
</if>
</select>
```
其中,`getUserInfo` 是 SQL 映射语句的 ID,`parameterType` 表示传入参数类型,`resultType` 表示返回结果类型。在 SQL 语句中,`1 = 1` 是为了方便后面的条件拼接,不影响查询结果。`<if>` 元素的 `test` 属性指定条件表达式,如果满足条件则拼接该条件的 SQL 语句。`${user_id}` 和 `${user_name}` 是从传入参数中获取的工号和用户名,可以通过 Map 或实体类来传入。`CONCAT('%', #{user_name}, '%')` 是拼接模糊匹配的字符串,`#{}` 表示占位符,可以防止 SQL 注入。
这样实现的好处是可以根据传入参数动态生成 SQL 语句,提高查询效率和安全性。
阅读全文