Sql 就像每个单词开头字符

问题描述 投票:0回答:1

我的桌子:

create table product (
  nama_product varchar(20)
);

insert into product values
('ayam bakar'),
('daging ayam'),
('bayam hijau'),
('daun bayam');

当前查询:

select nama_product
  from product
 where nama_product regexp '(^| )ayam( |$)';

我从https://stackoverflow.com/a/37234783/7273263得到答案。

我想从文本值中搜索字符或单词。当前查询我得到了准确的结果,但问题是我必须给出整个单词。

但是我想得到结果,如果'aya'而不是'ayam'

select nama_product
      from product
     where nama_product regexp '(^| )aya( |$)';

我尝试过使用

'%ayam%'
,但它搜索的结果是单词的中间..

我需要得到与输入相同的结果

'aya'
请告诉我,

我需要 mysql 和 sql ;sql lite 或任何一个的具体答案

编辑:所需结果:

nama_product
ayam bakar
daging ayam
sql mysql sqlite
1个回答
0
投票

解决方案1喜欢的印象:

SELECT *
FROM product
WHERE nama_product like'aya_%' or nama_product like'% aya_';

解决方案2常规印象:

SELECT nama_product
      FROM product
     WHERE nama_product regexp '(^| )aya';
© www.soinside.com 2019 - 2024. All rights reserved.