PHP mysqli按列_1分组,以列_2结尾

PHP mysqli按列_1分组,以列_2结尾,php,mysql,mysqli,Php,Mysql,Mysqli,我试图对我的mysql数据库中的数据进行分组,该数据库的第一个值为列_1,子值为列_2,使其成对,因此我的想法是使用两列对它们进行分组 "SELECT * FROM products GROUP BY column_1,column_2" 现在我的问题是,列_2的值因缩写而变化 示例Apple有时是Apl,因此并非所有数据都是我计划的分组,但有一个后缀与数据示例AppleCS和AplCS相同,因此我们的想法是捕获列2中以CS或SS结尾的最后两个字符 现在回到mysql上的分组,我不知道如何执行

我试图对我的
mysql
数据库中的数据进行分组,该数据库的第一个值为列_1,子值为列_2,使其成对,因此我的想法是使用两列对它们进行分组

"SELECT * FROM products GROUP BY column_1,column_2"
现在我的问题是,列_2的值因缩写而变化 示例
Apple
有时是
Apl
,因此并非所有数据都是我计划的分组,但有一个后缀与数据示例
AppleCS
AplCS
相同,因此我们的想法是捕获列2中以
CS
SS
结尾的最后两个字符

现在回到mysql上的分组,我不知道如何执行,所以下面是逻辑语句

"SELECT * FROM products GROUP BY column_1 and column_2 that ends with `CS` OR `SS`
最后一部分是捕获重复的条目,因此我需要计算返回为true的每个数据,并将其添加到查询字符串中

"SELECT *,COUNT(*) AS total FROM products GROUP BY column_1 and column_2 that ends with `CS` OR `SS`
我的目标

任何建议都很好,提前谢谢

编辑 下面的参考解决了我的问题,但我仍然在寻找其他方法,如果仍然不是最好的方法的话

SELECT *, COUNT(*) as total, RIGHT(column_2,  2) as sub FROM products GROUP BY column_1,sub ORDER BY total DESC
这是你想要的吗

SELECT
    RIGHT(column_1, 2),
    RIGHT(column_2, 2),
    COUNT(*) AS cnt
FROM products
WHERE
    RIGHT(column_1, 2) IN ('CS', 'SS') AND
    RIGHT(column_2, 2) IN ('CS', 'SS')
GROUP BY
    RIGHT(column_1, 2),
    RIGHT(column_2, 2)

要捕获以“CS”或“SS”结尾的列2的最后两个字符,您将编写:
类似于“%CSS”的列2或类似于“%SS”的列2
。我想知道这是否能回答你的问题。

希望这个答案能帮助你解决问题:我试图回答,但这只是猜测。您应该用实际数据更新您的问题。@TimBiegeleisen我更新了我的问题以添加我正在处理的数据。我使用
RIGHT()
方法将其整理出来,您的回答给了我线索谢谢!