Mysql SQL搜索无法从特定的起始元素“a”和“e”开始

Mysql SQL搜索无法从特定的起始元素“a”和“e”开始,mysql,sql,Mysql,Sql,这是我的密码 SELECT * FROM `contacts` WHERE name = 'a%' AND name = 'e%'; 但我犯了个错误 那么,如何在从a和e开始的表中显示记录呢 这是我的错误:-1064-您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以了解在第1行接近%'LIMIT 0,25'时要使用的正确语法 这是我的桌子结构:- 所以,请帮我…使用like操作符 要获取名称以a或e开头的行,请执行以下操作: 使用substr获取第一个字符 SELECT

这是我的密码

SELECT * FROM `contacts` WHERE name = 'a%' AND name = 'e%';
但我犯了个错误

那么,如何在从a和e开始的表中显示记录呢

这是我的错误:-1064-您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以了解在第1行接近%'LIMIT 0,25'时要使用的正确语法

这是我的桌子结构:-

所以,请帮我…

使用like操作符


要获取名称以a或e开头的行,请执行以下操作:

使用substr获取第一个字符

SELECT * FROM `contacts` where substr(name, 1) in ('a', 'e')
使用Substr

选择*from employees,其中SUBSTRFIRST_NAME,1在'A'和'e'之间

MySQL具有regexp,这使得这非常简单:

WHERE name regexp '^[ae]'
正则表达式非常强大。这是一个非常简单的例子:

'^[ae]'
-^ the "^" means the pattern must begin at the beginning of name
--^ this is a character class that matches either a or e

首先,它应该是或代替and。不管怎样,原始查询应该可以工作。我也会尝试这个查询,但不工作。在本例中,不显示任何记录。您的意思是名称应仅以a或e开头,还是名称应以a、b、c、d或e开头?我看不到您的语法中有错误。但是,代码不会执行您想要的操作,因为您将=与like混淆。
'^[ae]'
-^ the "^" means the pattern must begin at the beginning of name
--^ this is a character class that matches either a or e