0

假设我有一个包含以下行的表

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 归类为 1 个唯一项,因此结果集应如下所示:

Hello Apts                $8    (4 offers in total)
Itercontinental Hotel     $9
Hilton                    $18
Ramada Hotel              $8

本质上,我想对相似的名字进行分组。考虑到还有数百个其他名称需要分组,这在 MySQL 中是否可行?

非常感谢任何建议。

4

1 回答 1

0

也许是这样的:

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
于 2012-05-03T11:02:49.133 回答