在Mysql中将相似的名称分组为唯一记录
假设我有一个包含以下行的表在Mysql中将相似的名称分组为唯一记录,mysql,Mysql,假设我有一个包含以下行的表 id Name Price Supplier 1 Hello Apartment $12 A 2 Hello Apartments $8 B 3 Itercontinental Hotel $9 A 4 Hilton
id Name Price Supplier
1 Hello Apartment $12 A
2 Hello Apartments $8 B
3 Itercontinental Hotel $9 A
4 Hilton $18 C
5 Hello Apts $9 C
6 Apratrmentos Hello $12 D
7 Ramada Hotel $8 A
当我调用我的结果时,我希望id 1、2、5和6被归类为一个唯一项,因此结果集应该如下所示:
Hello Apts $8 (4 offers in total)
Itercontinental Hotel $9
Hilton $18
Ramada Hotel $8
本质上,我想把相似的名字分组。考虑到还有数百个其他名称需要分组,这在MySQL中可能吗
任何建议都将不胜感激 可能是这样的:
SELECT
SUM(T.Price) AS price,
T.Name
FROM
(
SELECT
Price,
(
CASE WHEN Name LIKE 'Hello Ap%'
THEN 'Hello Apts'
ELSE Name
) AS Name
FROM
table1
) AS T
GROUP BY
T.Name
读这篇文章:和