首页 > 解决方案 > Mysql - 总和记录单词喜欢的地方

问题描述

我在 phpmyadmin 中的表格如下所示:

id_perfume, name_perfume, id_brand, family_smell,   price
1            For 1        11        flower-oriental 595
2            For 2        11        flower          435
3            Edre alouse  12        wooden          368

我想要在价格总和中包含气味家族词花的所有香水。

sum family flower
1030

我试过这个查询,它不起作用,因为在输出中显示 0。

SELECT COUNT(price) from perfume WHERE family_smell like "flower*"; 

标签: mysqlsqlstringwhere-clausesql-like

解决方案


模式匹配的通配符是%, not *。另外,如果你想要一个总和,那么使用sum(),而不是count()

所以:

select sum(price) sum_price from perfume where family_smell like 'flower%'

family_smell这句话是:对以“花”开头的所有行的价格求和。如果你想包含“花”,那么你会在两端放一个通配符:

where family_smell like '%flower%'

请注意,我使用单引号而不是双引号来包围文字字符串。这符合 SQL 标准。在许多其他数据库中(以及在 ANSI SQL 中),双引号代表标识符(例如列名或表名),而不是字符串。


推荐阅读