mysql+行转列+过后排序不对_关于SQL Sever 动态行转列中排序的问题-----以下是我的代码...

DECLARE@cmdTextVARCHAR(8000);DECLARE@tmpSqlVARCHAR(8000);SET@cmdText='SELECTStockType,'SELECT@cmdText=@cmdText+'CASEProNameWHEN'''+ProName+'''THENDefaultValueELSE0ENDAS''...

DECLARE @cmdText VARCHAR(8000);

DECLARE @tmpSql VARCHAR(8000);

SET @cmdText = 'SELECT StockType,'

SELECT @cmdText = @cmdText+' CASE ProName WHEN ''' + ProName + '''THEN DefaultValue ELSE 0 END AS ''' + ProName

+''',' FROM (SELECT DISTINCT ProName FROM ChargeItem) T

SET @cmdText = LEFT(@cmdText, LEN(@cmdText) -1)

SET @cmdText = @cmdText + ' FROM ChargeItem,StockType,ChargeItemParameters where ProNameID=ChargeItem.Fid

and StockTypeID=StockType.Fid '

SET @tmpSql ='SELECT StockType,'

SELECT @tmpSql = @tmpSql + ' ISNULL(SUM(' + ProName+ '), 0) AS ''' + ProName + ''',' FROM (SELECT DISTINCT ProName FROM ChargeItem ) T

SET @tmpSql = LEFT(@tmpSql, LEN(@tmpSql) -1) + ' FROM ('

SET @cmdText = @tmpSql + @cmdText + ') T Group by StockType order by StockType'

PRINT @cmdText

EXEC(@cmdText)

此段代码执行后,ProName是按其首字母顺序排序的

怎样让ProName的显示按照其数据库中的排序?

另 ProName存在于表ChargeItem中,其中存在主键Fid

急!谢谢

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值