gpt4 book ai didi

mysql - 在mysql中按列分组

转载 作者:行者123 更新时间:2023-11-29 03:27:01 25 4
gpt4 key购买 nike

我在下面有这个数据

item    category    accounts
ITEM1 CATEGORY1 ACCOUNT1
ITEM2 CATEGORY1 ACCOUNT1
ITEM3 CATEGORY2 ACCOUNT2
ITEM4 CATEGORY2 ACCOUNT2
ITEM5 CATEGORY3 ACCOUNT3
ITEM6 CATEGORY3 ACCOUNT3

我想知道什么是更好的方法,这样我才能让它像这样输出

item    category    accounts
ITEM1 CATEGORY1 ACCOUNT1
ITEM2 CATEGORY1
ITEM3 CATEGORY2 ACCOUNT2
ITEM4 CATEGORY2
ITEM5 CATEGORY3 ACCOUNT3
ITEM6 CATEGORY3

我试过使用 UNION:

SELECT 
item,
category,
account

FROM t1

UNION

SELECT NULL,NULL,account from t1

但是我得到的结果是

item    category    accounts
ITEM1 CATEGORY1 ACCOUNT1
ITEM2 CATEGORY1 ACCOUNT1
ITEM3 CATEGORY2 ACCOUNT2
ITEM4 CATEGORY2 ACCOUNT2
ITEM5 CATEGORY3 ACCOUNT3
ITEM6 CATEGORY3 ACCOUNT3
NULL NULL ACCOUNT1
NULL NULL ACCOUNT2
NULL NULL ACCOUNT3

关于如何实现它的任何建议?谢谢

最佳答案

你可以这样做:

SELECT @acct := null;
SELECT item, category, (if(@acct = account, '', @acct := account)) account FROM items;

但我真的不建议这样做,除非是为了更方便地从 mysql cli 工具查看结果。 (您可能还想调整选择查询并指定适当的 ORDER BY。)

关于mysql - 在mysql中按列分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34688565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com