需要 SQL 查询将字母附加到整数列 我的样本数据就像
+--------+----------+--------+
| Number | Date | amount |
+--------+----------+--------+
| 135 | 20160901 | $10 |
| 135 | 20160912 | $20 |
| 135 | 20160915 | $30 |
+--------+----------+--------+
需要如下所示的输出,结果应基于日期
+--------+--------+
| Number | amount |
+--------+--------+
| 135X | $10 |
| 135XX | $20 |
| 135XXX | $30 |
+--------+--------+
X 被附加一次,在第一条记录中,因为该记录是一个月内的第一笔交易,XX 在第二条记录中,因为它是第二笔交易,依此类推,需要根据该交易的次数附加“N”个 X发生在一个月内。
请推荐
最佳答案
这是一种方法:
select (cast(number as varchar(255)) +
replicate('X', row_number() over (partition by number, year(date), month(date) order by date)
)
) as number,
amount
from t;
您可以使用类似的逻辑来更新 Number
列,假设它是一个命名不恰当的字符串列。
关于sql - 根据SQL SERVER中的事务数量追加字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39275221/