这个sql 问题 怎么解决啊?

iamsoloist 2004-07-26 10:35:19
一个表的结构是
id projectName amount
1 第一个 2003
2 第二个 2004
3 第三个 2005

第二个表的结构是
id colName des type
1 projectName 项目名称 varchar(200)
1 amount 总额 int

我想输出这样的格式

projectname projectname_des amount amount_des
第一个 项目名称 2003 总额
第二个 项目名称 2004 总额。

请大家帮帮忙,看这个问题怎么解决。

我第二个表里存得就是对第一个表的字段说明。
如果有更好的解决方法就更好了,谢谢大家
...全文
140 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
lng530 2004-07-26
  • 打赏
  • 举报
回复
看上去设计方法不太科学啊
BenZ004 2004-07-26
  • 打赏
  • 举报
回复
我晕~,怎么这样设计的表啊:)

用两个子查询分别查出前两列和后两列,再合并
tailer88 2004-07-26
  • 打赏
  • 举报
回复
上面的语句能实现功能,但感觉两个表其实是能合并成一个表的,这样更能解决问题.
iamsoloist 2004-07-26
  • 打赏
  • 举报
回复
我这样设计的原因是因为客户要自己可以增加数据库中数据表的字段。
fangbuge 2004-07-26
  • 打赏
  • 举报
回复
select projectname,projectname_des=(select max(des) from T2 where T1.id=T2.id and colname='projectName'),amount,amount_des=(select max(des) from T2 where T1.id=T2.id and colname='amount') from T1
iamsoloist 2004-07-26
  • 打赏
  • 举报
回复
觉得怪怪的大哥们,请指教一下好的方法好吗?我也觉得这样麻烦。
goody9807 2004-07-26
  • 打赏
  • 举报
回复
这样的设计方法不好
brightheroes 2004-07-26
  • 打赏
  • 举报
回复
感觉怪怪的
eboywy 2004-07-26
  • 打赏
  • 举报
回复
如果表一和表二是一对一的关系,就合并为一个表。
brightheroes 2004-07-26
  • 打赏
  • 举报
回复
调用

select projectname,selectRemark(projectName),amount,selectRemark(amount) from 第一张表
brightheroes 2004-07-26
  • 打赏
  • 举报
回复
CREATE FUNCTION dbo.selectRemark
(
@columnName varchar(1024)
)
RETURNS @retResults VARCHAR(128)

as

begin


select @retResults = des from 第二个表 where colName = @columnName

end
brightheroes 2004-07-26
  • 打赏
  • 举报
回复
个人认为应该做一个函数来解决这个问题

jesseNo1 2004-07-26
  • 打赏
  • 举报
回复
感觉你的表结构有冗余的数据啊。
xicunfu 2004-07-26
  • 打赏
  • 举报
回复
看的有点糊涂哦。
iamsoloist 2004-07-26
  • 打赏
  • 举报
回复
结拉,找到方法了:)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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