SELECT DISTINCT theme_type FROM `tb_warn` WHERE find_in_set(theme_type, '183,91,92') and werks = '1'优化一下这个sql
时间: 2024-03-02 10:49:37 浏览: 123
SQL_select.rar_sql 语法
您可以将 `find_in_set(theme_type, '183,91,92')` 的条件判断替换为多个 OR 连接的条件判断,这样可以避免使用函数,提高查询效率。同时,可以为 `werks` 字段添加索引,加快查询速度。改写后的 SQL 如下:
```
SELECT DISTINCT theme_type FROM `tb_warn` WHERE (theme_type = '183' OR theme_type = '91' OR theme_type = '92') AND werks = '1'
```
请注意,如果 `tb_warn` 表比较大,查询效率还可以通过其他方式进行优化。例如,可以使用分区表或者对 `theme_type` 字段添加索引等方式。
阅读全文