sql server2008循环问题_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
12
每页帖数
101/2页12
返回列表
0
发起投票  发起投票 发新帖子
查看: 2412 | 回复: 11   主题: sql server2008循环问题        下一篇 
高二三班
注册用户
等级:列兵
经验:112
发帖:1
精华:0
注册:2015-5-27
状态:离线
发送短消息息给高二三班 加好友    发送短消息息给高二三班 发消息
发表于: IP:您无权察看 2015-6-2 17:38:21 | [全部帖] [楼主帖] 楼主

上面红圈 第一个药品 进了 10个  ,买了 14个 ,负库存 4个了,

北京联动北方科技有限公司

下面是明细 具体 什么时间 卖了 14个 ,负库存 4个了,  现在我要把下面 明细 数据  14个数量 删掉  只留10个记录 ,让 销售 和进货相等, 库存为 0

sql server2008


可以直接delete

600个品种 要循环吧?




赞(0)    操作        顶端 
青草繁星
注册用户
等级:少校
经验:951
发帖:9
精华:0
注册:2015-3-30
状态:离线
发送短消息息给青草繁星 加好友    发送短消息息给青草繁星 发消息
发表于: IP:您无权察看 2015-6-2 17:39:17 | [全部帖] [楼主帖] 2  楼

你要是只追求进出相等 就全删了 加两条就可以了 啊



赞(0)    操作        顶端 
高二三班
注册用户
等级:列兵
经验:112
发帖:1
精华:0
注册:2015-5-27
状态:离线
发送短消息息给高二三班 加好友    发送短消息息给高二三班 发消息
发表于: IP:您无权察看 2015-6-2 17:40:14 | [全部帖] [楼主帖] 3  楼

我不会循环删一条还行600多个。。。



赞(0)    操作        顶端 
天使之翼
注册用户
等级:下士
经验:155
发帖:1
精华:0
注册:2015-5-26
状态:离线
发送短消息息给天使之翼 加好友    发送短消息息给天使之翼 发消息
发表于: IP:您无权察看 2015-6-2 17:43:33 | [全部帖] [楼主帖] 4  楼

你要是先匹配出不合格的消费记录就可以不用循环



赞(0)    操作        顶端 
hxfd
注册用户
等级:下士
经验:159
发帖:2
精华:0
注册:2015-5-29
状态:离线
发送短消息息给hxfd 加好友    发送短消息息给hxfd 发消息
发表于: IP:您无权察看 2015-6-2 17:44:18 | [全部帖] [楼主帖] 5  楼

你销售记录的主键呢没看到啊,可以用SQL的语句标示,不用循环



赞(0)    操作        顶端 
高二三班
注册用户
等级:列兵
经验:112
发帖:1
精华:0
注册:2015-5-27
状态:离线
发送短消息息给高二三班 加好友    发送短消息息给高二三班 发消息
发表于: IP:您无权察看 2015-6-2 17:44:56 | [全部帖] [楼主帖] 6  楼

我查出647个 负库存的的
现在要比对明细 删除 销售 比进货多的 数量



赞(0)    操作        顶端 
高二三班
注册用户
等级:列兵
经验:112
发帖:1
精华:0
注册:2015-5-27
状态:离线
发送短消息息给高二三班 加好友    发送短消息息给高二三班 发消息
发表于: IP:您无权察看 2015-6-2 17:45:12 | [全部帖] [楼主帖] 7  楼

spid



赞(0)    操作        顶端 
青草繁星
注册用户
等级:少校
经验:951
发帖:9
精华:0
注册:2015-3-30
状态:离线
发送短消息息给青草繁星 加好友    发送短消息息给青草繁星 发消息
发表于: IP:您无权察看 2015-6-2 17:50:50 | [全部帖] [楼主帖] 8  楼

可以用SQL的语句标示,不用循环我可以给你提供思路

行转列,列转行,你会不,不会可以去网上找,很容易找到

他的功能就是可以把一列多行的表,变成一行一列,每行用,隔开反过来也可以反过来也可以这个你知道吧



赞(0)    操作        顶端 
高二三班
注册用户
等级:列兵
经验:112
发帖:1
精华:0
注册:2015-5-27
状态:离线
发送短消息息给高二三班 加好友    发送短消息息给高二三班 发消息
发表于: IP:您无权察看 2015-6-2 17:56:43 | [全部帖] [楼主帖] 9  楼

可以用SQL的语句标示,不用循环我可以给你提供思路 行转列,列转行,你会不,不会可以去网上找,很容易找到 他的功能就是可以把一列多行的表,变成一行一列,每行用,隔开反过来也可以反过来也可以这个你知道吧

恩,知道的


赞(0)    操作        顶端 
青草繁星
注册用户
等级:少校
经验:951
发帖:9
精华:0
注册:2015-3-30
状态:离线
发送短消息息给青草繁星 加好友    发送短消息息给青草繁星 发消息
发表于: IP:您无权察看 2015-6-2 18:01:00 | [全部帖] [楼主帖] 10  楼

思路:

首先,查询你的库存表,条件是库存为负数的
然后查询的列为子查询
子查询的内容为 销售记录的 前 库存数 的绝对值得行数,取标示列的列转行
这样你能得到一个表,600多行,每行为应该删除的销售记录的标示
然后再把这个表,列转行
变成一行一列
再行转列,变成一个表格,这个表格,就是你要删除的销售记录的标示列表了



赞(0)    操作        顶端 
总帖数
12
每页帖数
101/2页12
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论