汇率交叉表怎么实现

telankes2000 2011-05-13 02:49:21

币别 美金 台幣 日圓 港幣 人民幣 英鎊 歐元 加幣 澳幣 泰銖 紐幣
美金 - 28.648 80.700 7.773 6.500 0.614 0.701 0.962 0.936 30.220 1.256
台幣 0.035 - 2.817 0.271 0.227 0.021 0.024 0.034 0.033 1.055 0.044
日圓 0.012 0.355 - 0.096 0.081 0.008 0.009 0.012 0.012 0.374 0.016
港幣 0.129 3.686 10.382 - 0.836 0.079 0.090 0.124 0.120 3.888 0.162
人民幣 0.154 4.407 12.415 1.196 - 0.094 0.108 0.148 0.144 4.649 0.193
英鎊 1.629 46.658 131.433 12.660 10.586 - 1.142 1.567 1.524 49.218 2.046
歐元 1.427 40.867 115.121 11.088 9.272 0.876 - 1.372 1.335 43.110 1.792
加幣 1.040 29.780 83.888 8.080 6.757 0.638 0.729 - 0.973 31.414 1.306
澳幣 1.068 30.607 86.218 8.304 6.944 0.656 0.749 1.028 - 32.286 1.342
泰銖 0.033 0.948 2.670 0.257 0.215 0.020 0.023 0.032 0.031 - 0.042
紐幣 0.796 22.809 64.252 6.189 5.175 0.489 0.558 0.766 0.745 24.061 -

例如这样的表格用sql语句怎么实现
declare @s nvarchar(4000)
set @s=' select CURRENCY'
Select @s=@s+','+[CURRENCY]+'=(case when CURRENCY='''+CURRENCY+''' then ''-'' else 0 end)'
from curreny group by CURRENCY
set @s=@s+' from curreny group by CURRENCY order by CURRENCY '
print @s
exec(@s)
这要怎么改 关键是else 那里怎么写?
源数据:
CURRENCY EXCHCURRENCY INRATE OUTRATE
AUD AUD 1.000000 1.000000
AUD CAD 1.038668 1.037717
AUD EUR .756737 .754246
AUD GBP .664015 .662335
AUD HKD 8.488596 8.404974
AUD IDR 10615.120275 8075.324675
AUD INR 48.137759 48.449431
AUD JPY 87.955581 87.528153
AUD KRW 1247.576737 1087.062937
AUD NTD 30.890000 31.090000
AUD NZD 1.368025 1.364794
AUD RMB 7.148808 6.904286
AUD SGD 1.337809 1.336055
AUD USD 1.085383 1.088585
AUD VND 25957.983193 21006.756757
CAD AUD .962771 .963654
CAD CAD 1.000000 1.000000
CAD EUR .728564 .726832
CAD GBP .639295 .638262
CAD HKD 8.172575 8.099486
CAD IDR 10219.931271 7781.818182
CAD INR 46.345644 46.688484
CAD JPY 84.681093 84.346847
CAD KRW 1201.130856 1047.552448
CAD NTD 29.740000 29.960000
CAD NZD 1.317095 1.315189
CAD RMB 6.882666 6.653342
CAD SGD 1.288003 1.287495
CAD USD 1.044975 1.049020
CAD VND 24991.596639 20243.243243
EUR AUD 1.321463 1.325828
EUR CAD 1.372562 1.375834
EUR EUR 1.000000 1.000000
EUR GBP .877472 .878142
EUR HKD 11.217367 11.143552
EUR IDR 14027.491409 10706.493506
EUR INR 63.612280 64.235624
EUR JPY 116.230068 116.047297
EUR KRW 1648.626817 1441.258741
EUR NTD 40.820000 41.220000
EUR NZD 1.807795 1.809482
EUR RMB 9.446887 9.153897
EUR SGD 1.767865 1.771379
EUR USD 1.434294 1.443277
EUR VND 34302.521008 27851.351351
GBP AUD 1.505989 1.509810
GBP CAD 1.564223 1.566756
GBP EUR 1.139637 1.138768
GBP GBP 1.000000 1.000000
GBP HKD 12.783732 12.689916
GBP IDR 15986.254296 12192.207792
GBP INR 72.494935 73.149447
GBP JPY 132.460137 132.150901
GBP KRW 1878.836834 1641.258741
GBP NTD 46.520000 46.940000
GBP NZD 2.060230 2.060579
GBP RMB 10.766026 10.424162
GBP SGD 2.014725 2.017190
GBP USD 1.634575 1.643557
GBP VND 39092.436975 31716.216216
HKD AUD .117805 .118977
HKD CAD .122360 .123465
HKD EUR .089147 .089738
HKD GBP .078224 .078803
HKD HKD 1.000000 1.000000
HKD IDR 1250.515464 960.779221
HKD INR 5.670874 5.764376
HKD JPY 10.361617 10.413851
HKD KRW 146.970921 129.335664
HKD NTD 3.639000 3.699000
HKD NZD .161160 .162379
HKD RMB .842166 .821452
HKD SGD .157601 .158960
HKD USD .127864 .129517
HKD VND 3057.983193 2499.324324
IDR AUD .000094 .000124
IDR CAD .000098 .000129
IDR EUR .000071 .000093
IDR GBP .000063 .000082
IDR HKD .000800 .001041
IDR IDR 1.000000 1.000000
IDR INR .004535 .006000
IDR JPY .008286 .010839
IDR KRW .117528 .134615
IDR NTD .002910 .003850
IDR NZD .000129 .000169
IDR RMB .000673 .000855
IDR SGD .000126 .000165
IDR USD .000102 .000135
IDR VND 2.445378 2.601351
INR AUD .020774 .020640
INR CAD .021577 .021419
INR EUR .015720 .015568
INR GBP .013794 .013671
INR HKD .176340 .173479
INR IDR 220.515464 166.675325
INR INR 1.000000 1.000000
INR JPY 1.827164 1.806588
INR KRW 25.916801 22.437063
INR NTD .641700 .641700
INR NZD .028419 .028169
INR RMB .148507 .142505
INR SGD .027791 .027576
INR USD .022547 .022468
INR VND 539.243697 433.581081
JPY AUD .011369 .011425
JPY CAD .011809 .011856
JPY EUR .008604 .008617
JPY GBP .007549 .007567
JPY HKD .096510 .096026
JPY IDR 120.687285 92.259740
JPY INR .547296 .553530
JPY JPY 1.000000 1.000000
JPY KRW 14.184168 12.419580
JPY NTD .351200 .355200
JPY NZD .015554 .015593
JPY RMB .081277 .078881
JPY SGD .015210 .015264
JPY USD .012340 .012437
JPY VND 295.126050 240.000000
KRW AUD .000802 .000920
KRW CAD .000833 .000955
KRW EUR .000607 .000694
KRW GBP .000532 .000609
KRW HKD .006804 .007732
KRW IDR 8.508591 7.428571
KRW INR .038585 .044569
KRW JPY .070501 .080518
KRW KRW 1.000000 1.000000
KRW NTD .024760 .028600
KRW NZD .001097 .001255
KRW RMB .005730 .006351
KRW SGD .001072 .001229
KRW USD .000870 .001001
KRW VND 20.806723 19.324324
NTD AUD .032373 .032165
NTD CAD .033625 .033378
NTD EUR .024498 .024260
NTD GBP .021496 .021304
NTD HKD .274801 .270343
NTD IDR 343.642612 259.740260
NTD INR 1.558361 1.558361
NTD JPY 2.847380 2.815315
NTD KRW 40.387722 34.965035
NTD NTD 1.000000 1.000000
NTD NZD .044287 .043898
NTD RMB .231428 .222074
NTD SGD .043309 .042974
NTD USD .035137 .035014
NTD VND 840.336134 675.675676
NZD AUD .730981 .732711
NZD CAD .759247 .760347
NZD EUR .553160 .552644
NZD GBP .485383 .485300
NZD HKD 6.205001 6.158421
NZD IDR 7759.450172 5916.883117
NZD INR 35.187782 35.499455
NZD JPY 64.293850 64.132883
NZD KRW 911.954766 796.503497
NZD NTD 22.580000 22.780000
NZD NZD 1.000000 1.000000
NZD RMB 5.225642 5.058850
NZD SGD .977913 .978943
NZD USD .793394 .797619
NZD VND 18974.789916 15391.891892
RMB AUD .139883 .144838
RMB CAD .145293 .150300
RMB EUR .105855 .109243
RMB GBP .092885 .095931
RMB HKD 1.187414 1.217356
RMB IDR 1484.879725 1169.610390
RMB INR 6.733676 7.017298
RMB JPY 12.303531 12.677365
RMB KRW 174.515347 157.447552
RMB NTD 4.321000 4.503000
RMB NZD .191364 .197673
RMB RMB 1.000000 1.000000
RMB SGD .187137 .193511
RMB USD .151827 .157668
RMB VND 3631.092437 3042.567568
SGD AUD .747491 .748472
SGD CAD .776395 .776702
SGD EUR .565654 .564532
SGD GBP .496346 .495739
SGD HKD 6.345150 6.290889
SGD IDR 7934.707904 6044.155844
SGD INR 35.982546 36.263051
SGD JPY 65.746014 65.512387
SGD KRW 932.552504 813.636364
SGD NTD 23.090000 23.270000
SGD NZD 1.022586 1.021510
SGD RMB 5.343670 5.167666
SGD SGD 1.000000 1.000000
SGD USD .811314 .814776
SGD VND 19403.361345 15722.972973
USD AUD .921334 .918623
USD CAD .956960 .953271
USD EUR .697207 .692868
USD GBP .611780 .608436
USD HKD 7.820830 7.721006
USD IDR 9780.068729 7418.181818
USD INR 44.350943 44.506779
USD JPY 81.036446 80.405405
USD KRW 1149.434572 998.601399
USD NTD 28.460000 28.560000
USD NZD 1.260407 1.253731
USD RMB 6.586438 6.342438
USD SGD 1.232568 1.227331
USD USD 1.000000 1.000000
USD VND 23915.966387 19297.297297
VND AUD .000039 .000048
VND CAD .000040 .000049
VND EUR .000029 .000036
VND GBP .000026 .000032
VND HKD .000327 .000400
VND IDR .408935 .384416
VND INR .001854 .002306
VND JPY .003388 .004167
VND KRW .048061 .051748
VND NTD .001190 .001480
VND NZD .000053 .000065
VND RMB .000275 .000329
VND SGD .000052 .000064
VND USD .000042 .000052
VND VND 1.000000 1.000000

...全文
153 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
中国风 2011-05-13
  • 打赏
  • 举报
回复
declare @s nvarchar(4000)
set @s=' select CURRENCY'
Select @s=@s+','+[EXCHCURRENCY]+'=isnull(nullif(ltrim(str(max(case when [EXCHCURRENCY]='''+[EXCHCURRENCY]+''' then [INRATE]/[OUTRATE] else 0 end),18,6)),''1.000000''),''-'')'
from curreny group by [EXCHCURRENCY] ORDER BY [EXCHCURRENCY]
set @s=@s+' from curreny group by CURRENCY order by CURRENCY '
print @s
exec(@s)

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧