3

被要求在大量文本中查找美元值。可以对美元符号进行搜索吗?如果是这样,任何示例/指导将不胜感激。当前查询...

select * from concept where concept_description like '%$%';
4

2 回答 2

3

您可能想使用LOCATE来查看 col 值是否包含$例如

   SELECT * FROM concept WHERE LOCATE('$', concept_description) > 0;
于 2012-10-23T17:35:45.900 回答
1

给出的查询将选择concept_description包含 a的行$,但我假设您想实际提取美元金额?如果一个字段中只有一美元,则可以使用

SELECT
SUBSTRING(
    concept_description,
    LOCATE('$', concept_description),
    LOCATE(' ', concept_description, LOCATE('$', concept_description)) - LOCATE('$', concept_description)
)
FROM table
WHERE LOCATE('$', concept_description) > 0

这假设美元金额后面总是有一个空格,并且可能需要对索引进行一些捏造。最好用一个简单的查询来提取整个字段,然后使用正则表达式来获取任何美元值。

于 2012-10-23T17:41:15.507 回答