mysql 过滤掉以he开头的值,但不过滤hello的怎么写
时间: 2024-02-18 09:03:59 浏览: 10
您可以使用MySQL中的NOT LIKE运算符来实现这个需求。以下是一个例子:
```
SELECT * FROM your_table WHERE your_column NOT LIKE 'he%';
```
上述SQL语句中,我们使用了NOT LIKE运算符来匹配不以"he"开头的字符串。%符号表示任意数量的字符,因此不匹配以"he"开头的所有字符串,如"hello"、"help"等。这样就可以过滤掉以"he"开头的值,但不会过滤掉"hello"。
相关问题
mysql 过滤以he开头的值,但不过滤hello的SQL怎么写
您可以使用MySQL中的LIKE运算符来实现这个需求。以下是一个例子:
```
SELECT * FROM your_table WHERE your_column LIKE 'he%';
```
上述SQL语句中,我们使用了LIKE运算符来匹配以"he"开头的字符串。%符号表示任意数量的字符,因此匹配到的结果包括以"he"开头的所有字符串,如"hello"、"help"等。如果您只想筛选出以"he"开头且长度为3的字符串,可以这样写:
```
SELECT * FROM your_table WHERE your_column LIKE 'he_';
```
上述SQL语句中,我们使用了下划线(_)来表示一个任意字符的位置,因此只匹配长度为3的字符串,如"hem"、"hey"等,而"hello"将不会被匹配。
mysql 过滤掉以he开头的单词,但不过滤掉hello、heabc、hecde
可以使用正则表达式来过滤掉以he开头的单词,但不过滤掉hello、heabc、hecde。具体的SQL语句如下:
```sql
SELECT * FROM table_name WHERE column_name NOT REGEXP '^he([^a-zA-Z]|$)';
```
其中,`table_name`为表名,`column_name`为要过滤的列名。这条SQL语句使用了正则表达式来匹配以he开头的单词,但不匹配hello、heabc、hecde。具体来说,正则表达式中的:
- `^` 表示匹配字符串的开头;
- `he` 表示匹配以he开头的字符串;
- `[^a-zA-Z]` 表示不匹配后面跟着字母的字符,即匹配以he开头的单词;
- `|` 表示或者;
- `$` 表示匹配字符串的结尾。
因此,这条SQL语句可以过滤掉以he开头的单词,但不过滤掉hello、heabc、hecde。