在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
读这篇文章:和