请教 求百分比

dsqempress 2008-01-24 12:16:41
select i.id as id,i.game as gm, i.name as name, sp.LV as lv, sp.A as A,sp.B as B from T_item as i left join T_itemSp as sp on i.id = sp.ItemID where sp.ItemID = 15

A~B 是根据lv的值来决定 比如说lv有5 那么 就是sp.A~sp.E 最多到Z

如何求的 A~B 的百分比

id gm name lv A B
15 1 test 2 100 100

我要求A 和 B的 百分比 比如 A 50% B 50%

不知道SQL语句能不能实现?
或者VB.NET代码如何实现?
...全文
83 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dsqempress 2008-01-24
  • 打赏
  • 举报
回复
For x As Integer = 0 To lv - 1
lvs += "sp." & cs(x) & " as " & cs(x) & ","
tb(x) = cs(x)
Next

db.SQL = "select i.id as id,i.game as gm, i.name as name, sp.LV as lv, " & lvs & " " _
& "from T_item as i left join T_itemSp as sp on i.id = sp.ItemID where sp.ItemID = " & id & ""

lvs 是我根据 lv长度拼接起来的
liangCK 2008-01-24
  • 打赏
  • 举报
回复
没看懂.
pt1314917 2008-01-24
  • 打赏
  • 举报
回复

id gm name lv A B
15 1 test 2 100 100
-----------------------------------------
直接把这个结果按百分比输出:
create table yu(id int,gm int,name varchar(10),lv int,A int,B int)
insert into yu select 15, 1 , 'test' , 2 , 100 , 100


select a=ltrim(cast(a*100.0/(a+b) as numeric(5,2)))+'%',
b=ltrim(cast(b*100.0/(a+b) as numeric(5,2)))+'%'
from yu
dawugui 2008-01-24
  • 打赏
  • 举报
回复
不固定不好搞.
-狙击手- 2008-01-24
  • 打赏
  • 举报
回复
select a,b,a*1.0/(a+b) as A百分比,b*1.0/(a+b) as B百分比
from ta
liangCK 2008-01-24
  • 打赏
  • 举报
回复
看看
dsqempress 2008-01-24
  • 打赏
  • 举报
回复
A B并不固定 根据 lv增长
如果 lv是5 那么查询的字段就有 a b c d e

我是要 比如a~z 这些字段中 ,每个字段占到了100%中的 %多少
dawugui 2008-01-24
  • 打赏
  • 举报
回复
是根据lv的值来决定?

这个看不懂
dawugui 2008-01-24
  • 打赏
  • 举报
回复
id gm name lv A B
15 1 test 2 100 100

是按A,B对分?

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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