I want to find the data from table artists where name is start with letter a, b, c.
i.e. My o/p should contain Adam Alan Bob Ben Chris Cameron But not GlAin, doC, dolBie
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
In MySQL use the
'^' to identify you want to check the first char of the string then define the array  of letters you want to check for.
SELECT * FROM artists WHERE name REGEXP '^[abc]'
You can use like ‘A%’ expression, but if you want this query to run fast for large tables I’d recommend you to put number of first button into separate field with tiny int type.
select * from artists where name like "A%" or name like "B%" or name like "C%"
One can also use
RLIKE as below
SELECT * FROM artists WHERE name RLIKE '^[abc]';
Try this simple select:
select * from artists where name like "a%"
I would go for substr() functionality in MySql.
Basically, this function takes account of three parameters i.e.
SELECT * FROM artists WHERE lower(substr(name,1,1)) in ('a','b','c');
try using CHARLIST as shown below:
select distinct name from artists where name RLIKE '^[abc]';
use distinct only if you want distinct values only.
To read about it Click here.