我有一个列值
lut00006300.txt
sand2a0000300.raw
我只需要从上面给定的列值中提取字符数据。我尝试了以下查询并能够获得前三个字符。
select filesize,
substring(Filename FROM 1 FOR 3) AS Instrument from Collection;
有没有办法只从列值中提取字符而留下扩展名
结果应该是:
LUT
SAND2A
我有一个列值
lut00006300.txt
sand2a0000300.raw
我只需要从上面给定的列值中提取字符数据。我尝试了以下查询并能够获得前三个字符。
select filesize,
substring(Filename FROM 1 FOR 3) AS Instrument from Collection;
有没有办法只从列值中提取字符而留下扩展名
结果应该是:
LUT
SAND2A
SELECT
filesize,
UPPER(SUBSTRING_INDEX(SUBSTRING_INDEX(Filename, '.', 1), '0', 1)) AS Instrument
FROM Collection;
这是一个肮脏的解决方案,因为您想拥有2
in SAND2A
.
在此处阅读有关功能的更多信息。
I think below query will helps you.
select filesize,Filename from Collection where Filename REGEXP '[:alpha]';