Code | FName | Freq
---------------------
L1 | Ted | 4
L1 | Frank |
L1 | Ted | 5
L2 | Ted | 7
L1 | Jim | 4
L1 | Ted | 7
L4 | Ed | 1
L2 | Ted | 2
L1 | Frank | 2
可以说我的数据库中有一个类似的表。是否有可能在SQL中获取记录(或在SQL中获取,然后在另一个Access查询中进行重组),以便获得如下所示的记录集:
Code | FName | Freq
-------------------------
L1 | Ted | 4, 5, 7
L1 | Frank | 2
L2 | Ted | 2, 7
L4 | Ed | 1
L1 | Jim | 4
在基于“代码”和“Fname”的列表中,将不同的“Freq”数字附加在一起?只要所有不同的频率数字都在列表中,顺序就无关紧要。我可以假设对于Code和Fname的每种组合,都会有不同的,非重复的频率数字(因此,“L1”和“Ted”的组合的频率值永远不会超过4)
最佳答案
那你真幸运!
select code, fname, listagg(cast(freq as varchar(32), ',') within group (order by freq)
from t
group by code, fname
但是,我不确定这将如何处理空白。
关于sql - SQL或Access中的排序表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11942754/