请大家帮忙在进销存中SQL语句的问题

landa888 2003-01-15 12:37:49
如下表:
表1:Feng
FengId FengH FengQ
A12345 44.55 55.66
B12345 22.11 11.00

表2:Zhi
zhiId xu zhiH zhiQ
A12345 工序1 12.23 21.33
A12345 工序2 11.33 23.33
A12345 工序3 33.44 33.45
B12345 式1 22.00 33.00
B12345 式2 3.00 34.00


我用如下语句
SELECT FengId AS 批号, FengH AS 已缝, FengQ AS 未缝,
xu AS 工序,zhiH AS 已织, zhiQ AS 未织
FROM Feng INNER JOIN
zhi ON FengId = zhiId
得出这样的结果
批号 批号 未缝 工序 已织 未织
A12345 44.55 55.66 工序1 12.23 21.33
A12345 44.55 55.66 工序2 11.33 23.33
A12345 44.55 55.66 工序3 33.44 33.45
B12345 22.11 11.00 式1 22.00 33.00
B12345 22.11 11.00 式2 3.00 34.00

这样是对的,可我想不要重复的,我想要的是这样的:
批号 批号 未缝 工序 已织 未织
A12345 44.55 55.66 工序1 12.23 21.33
工序2 11.33 23.33
工序3 33.44 33.45
B12345 22.11 11.00 式1 22.00 33.00
式2 3.00 34.00

请大家帮忙,谢谢大家!
...全文
30 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
chengxurensheng 2003-01-15
  • 打赏
  • 举报
回复
在SQL 中你不可能得到你想要的结果。你先好好看以下关系数据库的概念。不过你可以在程序中解决。在VB、PB等语言中有一个控件TREEVIEW可以得到你想要的结果。
hjhing 2003-01-15
  • 打赏
  • 举报
回复
理論上你應該在界面層處理的
nielisheng 2003-01-15
  • 打赏
  • 举报
回复
可能要数据类型转换,如int 等

nielisheng 2003-01-15
  • 打赏
  • 举报
回复
1:
SELECT IDENTITY(int,1,1) AS num,
FengId AS 批号,
FengH AS 已缝,
FengQ AS 未缝,
xu AS 工序,
zhiH AS 已织,
zhiQ AS 未织
INTO #Tmp
FROM Feng INNER JOIN
zhi ON FengId = zhiId


2:

SELECT '批号'=(case when A.批号 = B.批号 then ' ' else A.批号 end),
'未缝'=(case when A.未缝 = B.未缝 then ' ' else A.未缝 end),
工序, 已织, 未织
FROM #Tmp A, #Tmp B
WHERE A.num = B.num - 1

3:如不符考虑排序问题,何以两个'批号'

34,838

社区成员

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

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