c*****m 发帖数: 1160 | 1 【 以下文字转载自 Programming 讨论区 】
发信人: chatham (聊天火腿), 信区: Programming
标 题: 一个sql问题:怎样实现 (((a1*10)+a2)*10+a3)*10 ...
发信站: BBS 未名空间站 (Sun Jul 8 10:22:59 2012, 美东)
select value from version:
3
4
5
6
怎样从这个表里能得出“3456”这个数字? |
B*****g 发帖数: 34098 | 2 90%+的数据库版SQL问题可以用partition by解决
【在 c*****m 的大作中提到】 : 【 以下文字转载自 Programming 讨论区 】 : 发信人: chatham (聊天火腿), 信区: Programming : 标 题: 一个sql问题:怎样实现 (((a1*10)+a2)*10+a3)*10 ... : 发信站: BBS 未名空间站 (Sun Jul 8 10:22:59 2012, 美东) : select value from version: : 3 : 4 : 5 : 6 : 怎样从这个表里能得出“3456”这个数字?
|
y****w 发帖数: 3747 | 3 select sum(value*power(10,(order-1))) from (select value, rownumber()over()
as order from version order by 1 desc)t
【在 c*****m 的大作中提到】 : 【 以下文字转载自 Programming 讨论区 】 : 发信人: chatham (聊天火腿), 信区: Programming : 标 题: 一个sql问题:怎样实现 (((a1*10)+a2)*10+a3)*10 ... : 发信站: BBS 未名空间站 (Sun Jul 8 10:22:59 2012, 美东) : select value from version: : 3 : 4 : 5 : 6 : 怎样从这个表里能得出“3456”这个数字?
|
s**********o 发帖数: 14359 | 4 convert to string add together la |
c*****m 发帖数: 1160 | 5 在 Programming 那边解决了:
==========
declare @aa int;
set @aa=0;
select @aa=@aa*10+value from version
select @aa
======= |
s**********o 发帖数: 14359 | 6 7
8
9
10
不就是78910么?这不就是字符串合并么,运算什么,自找麻烦 |
z***y 发帖数: 7151 | 7 有的时候确实需要合并多个列的字符串。
别人问的问题可能你会觉得不make sense, 可以多反问几次,很多时候是我们自己不
懂别人的问题。 再说, 你工作的时候会和同事这样说话吗?
【在 s**********o 的大作中提到】 : 7 : 8 : 9 : 10 : 不就是78910么?这不就是字符串合并么,运算什么,自找麻烦
|
s**********o 发帖数: 14359 | 8 完成任务当然是用最简单的方法,(((a1*10)+a2)*10+a3)*10不就是LOOP么,SQL也有
WHILE LOOP啊,如果数都在TABLE里,那就弄个CURSOR。
【在 z***y 的大作中提到】 : 有的时候确实需要合并多个列的字符串。 : 别人问的问题可能你会觉得不make sense, 可以多反问几次,很多时候是我们自己不 : 懂别人的问题。 再说, 你工作的时候会和同事这样说话吗?
|
z***y 发帖数: 7151 | 9 Cursor???
【在 s**********o 的大作中提到】 : 完成任务当然是用最简单的方法,(((a1*10)+a2)*10+a3)*10不就是LOOP么,SQL也有 : WHILE LOOP啊,如果数都在TABLE里,那就弄个CURSOR。
|
s**********o 发帖数: 14359 | 10 对啊,比如数字是这样的呢?你就得一个一个用CURSOR取出来
7
5
6
12
289
35
579
。。
。。
。。。
【在 z***y 的大作中提到】 : Cursor???
|
|
|
y****w 发帖数: 3747 | 11 抬头看beijing念的经。
【在 s**********o 的大作中提到】 : 对啊,比如数字是这样的呢?你就得一个一个用CURSOR取出来 : 7 : 5 : 6 : 12 : 289 : 35 : 579 : 。。 : 。。
|
s**********o 发帖数: 14359 | 12 这个经可能念歪了吧
【在 y****w 的大作中提到】 : 抬头看beijing念的经。
|
y****w 发帖数: 3747 | 13 比如表里有几个序列需要同时这么搞一下。
【在 s**********o 的大作中提到】 : 这个经可能念歪了吧
|
s**********o 发帖数: 14359 | 14 可人家要的只是一个值而已
【在 y****w 的大作中提到】 : 比如表里有几个序列需要同时这么搞一下。
|
y****w 发帖数: 3747 | 15 无论怎样都是一句sql。
【在 s**********o 的大作中提到】 : 可人家要的只是一个值而已
|