ms access sql查询中是否有可以提取特定字符串的函数?
我想知道MS Access SQL查询中是否有一个函数,使用该函数可以提取列中每个单元格的给定字符串,类似于子字符串,但使用字符串作为条件 例如,我想从以下名为“歌词”的专栏中提取关键字SUN和FUN 歌词 因此,我只剩下: 歌词 在专栏里。由于字符串关键字前后的长度以及未使用字符的数量不同,我不能使用left和right 是否有其他方法可以解决此问题?您可以使用以下用例: 在不是原始标签的MS Access中:ms access sql查询中是否有可以提取特定字符串的函数?,sql,string,ms-access,substring,Sql,String,Ms Access,Substring,我想知道MS Access SQL查询中是否有一个函数,使用该函数可以提取列中每个单元格的给定字符串,类似于子字符串,但使用字符串作为条件 例如,我想从以下名为“歌词”的专栏中提取关键字SUN和FUN 歌词 因此,我只剩下: 歌词 在专栏里。由于字符串关键字前后的长度以及未使用字符的数量不同,我不能使用left和right 是否有其他方法可以解决此问题?您可以使用以下用例: 在不是原始标签的MS Access中: select iif(lyrics like '*SUN*', 'SUN'
select iif(lyrics like '*SUN*', 'SUN'
iif(lyrics like '*FUN*', 'FUN', NULL)
)
您还可以在更新中包含以下内容:
可以使用正则表达式子字符串函数
如果字符串同时具有这两个属性,那么您使用的是哪种DBMS产品?SQL只是一种查询语言,而不是特定数据库产品的名称@戈登·林诺夫——幸运的是,这个案子从未发生过!那正是我想要的。不幸的是,据我所知,ms access中不存在此功能。我同时更新了这个问题-很抱歉造成混乱!
SUN
FUN
SUN
SUN
FUN
select (case when lyrics like '%SUN%' then 'SUN'
when lyrics like '%FUN%' then 'FUN'
end)
select iif(lyrics like '*SUN*', 'SUN'
iif(lyrics like '*FUN*', 'FUN', NULL)
)
update t
set lyrics = iif(lyrics like '*SUN*', 'SUN'
iif(lyrics like '*FUN*', 'FUN', NULL)
) ;
select regexp_substr(Lyrics,'(SUN|FUN)', 1,1, 'i') from yourtablenamehere;