有一表如下:MRP_NO BZ_KND ZX_NOFE012EA0 BULK KAD00500
FE012EA0 BULK100E-2 KAJ02400 另一表如下:MRP_NO PRD_NOFE012EA0 JLEE012B
FE012EA0 JVBE0242把第一表的ZX_NO按BZ_KND分類插入第二表的PRD_NO中,成如下二表MRP_NO PRD_NO
FE012EA0 JLEE012B
FE012EA0 JVBE0242
FE012EA0 KAD00500
____________________________MRP_NO PRD_NOFE012EA0 JLEE012B
FE012EA0 JVBE0242
FE012EA0 KAJ02400
FE012EA0 BULK100E-2 KAJ02400 另一表如下:MRP_NO PRD_NOFE012EA0 JLEE012B
FE012EA0 JVBE0242把第一表的ZX_NO按BZ_KND分類插入第二表的PRD_NO中,成如下二表MRP_NO PRD_NO
FE012EA0 JLEE012B
FE012EA0 JVBE0242
FE012EA0 KAD00500
____________________________MRP_NO PRD_NOFE012EA0 JLEE012B
FE012EA0 JVBE0242
FE012EA0 KAJ02400
解决方案 »
- Devexpress for delphi7 成功安装全过程
- cxgrid里面LookupComboBox属性的字段在输入时能否实现模糊搜索数据?
- 在线等请教各位大虾DBXPRESS问题
- 有什么办法判断update语句执行后有多少个记录被修改
- 多重筛选问题???
- 看到方法后面的sender:Tobject,不知道做什么用,是不是考虑代码通用,不用写具体控件名啊?
- 新年将至,祝大家赚钱多的都拿不动!!
- 我想将treeview的一个节点下的所有子节点拖动到另外一个节点下面
- 如何一次性给某个容器控件的所有组件设置某个属性的值?
- 特急!超级难题!自当重谢!
- 怎样在DELPHI中调用其他的应用程序?急!!
- 生成树??
如何把1,2(如下表)按A,B分類分別插入表二中MRP_NO BZ_KND ZX_NOFE012EA0 A 1
FE012EA0 B 2 (表一)------------------------------------------
成如下數據:MRP_NO PRD_NOFE012EA0 JLEE012B
FE012EA0 JVBE0242
FE012EA0 1
FE012EA0 JLEE012B
FE012EA0 JVBE0242
FE012EA0 2(表二)
这句话也不太懂,
那像下面这样的数据,要怎么个分类插入呢?MRP_NO BZ_KND ZX_NOFE012EA0 A 1
FE012EA0 B 1
FE012EA0 B 2
FE012EA0 B 3 (表一)
FE012EA0 JVBE0242
FE012EA0 1
FE012EA0 JLEE012B
FE012EA0 JVBE0242
FE012EA0 1
FE012EA0 2
FE012EA0 3
表二重復的是表一的數據,拿企業來說,表一是原料BOM,表二是包裝BOM(據于企業特殊原因,當初沒把包裝BOM
建在一起,現在又想合并,所以保持表一原料BOM不變把包裝BOM寫過來,或也可以保持包裝BOM不變把主料BOM寫
過去.....)
第一步:根據表1中每一個mrp_no 有幾個bz_knd ,就復制幾次表2中的原始資料。
第二步:把表1中的每條記錄mrp_no,zx_no 添加到表1中(這個簡單,一句就OK了)第一步:
首先在表2加一字段如kk字段(int),值都設為1,用來表示這是原始bom資料.
declare @mrp_no varchar(20)
declare @num int,@rowcount int
declare mrp_cur cursor --定義游標
for
select distinct mrp_no from table1open mrp_cur --打開游標
fetch next from mrp_cur into @mrp_no--得到第一條記錄的資料
--開始循環--
while @@fetch_status=0 --如果fetch操作成功
begin
set @num=1
select @rowcount=isnull(count(distinct bz_knd),0) from table1 where mrp_no=@mrp_no --得到這個mrp_no 有多少個bz_knd
while @num<=@rowcount
begin
insert into table2 (mrp_no,prd_no) select mrp_no ,prd_no from table2 where mrp_no=@mrp_no and kk=1
set @num=@num+1
end
fetch next from mrp_cur into @mrp_no --得到下一條記錄的資料
enddeallocate mrp_cur --關閉游標
第二步:
insert into table2 (mrp_no,prd_no) select mrp_no,zx_no from table1PS 沒經過測驗,不敢保證正確性。而且我的理解也可能有誤。
又PS 這樣你的表2中會有大量的重復數據,應該還有其它字段你沒寫出來吧?主鍵是什麼?