资料:客户订单表结构
Table代码:COPTC Table代码:COPTD
Table名称:客户订单表头档 Table名称:客户订单表身档
PRIMARY Key :TC001+TC002 PRIMARY Key:TC001+TC002+TC003
--------------------------------- ------------------------------------
TC001    订单单别 <--对应之Key--> TD001    订单单别
TC002    订单单号 <--对应之Key--> TD002    订单单号
TC003    订单日期 TD003    序号
TC004    客户编号 TD004    品号
TC005    部门编号 TD005    品名
TC006    业务人员 TD006    规格
TC029    订单金额 TD008    订单数量
                                                                                        TD011    单价
                                                                                        TD012    金额
1. 请写出清除客户编号为“A001”之客户订单表头、表身资料的SQL语句?
2. 想在订单单别为1800,单号为20150331001的订单表身插入一笔数据,订单序号0004,品号为TEST,品名:测试,规格:测试,订单数量100,订单单价10,订单金额1000, 请问SQL 要如何写?

解决方案 »

  1.   

    --1.
    --先删除表身数据
    DELETE T2
    FROM COPTC T1
    JOIN COPTD T2 ON T1.TC001=T2.TD001 AND T1.TC002=T2.TD002
    WHERE T1.TC004='A001'
    --再删除表头数据
    DELETE COPTC WHERE TC004='A001'
    SELECT * FROM COPTC
    SELECT * FROM COPTD--2.
    INSERT INTO COPTD
    SELECT 1800,'20150331001','0004','TEST','测试','测试',100,10.,1000.
    这边应该是写错了吧
      

  2.   

    --1.当做字符串相加TD001 + TD002
    Delete From COPTD Where (TD001 + TD002) In (Select TC001 + TC002 From @TmpCOPTC Where TC004 = N'A001')
    Delete From COPTC Where TC004 = N'A001'--2.
    Insert Into COPTD
    Values('1800','20150331001','0004','TEST','测试','测试',100,10,1000)
      

  3.   

    --1.当做字符串相加TD001 + TD002
    Delete From COPTD Where (TD001 + TD002) In (Select TC001 + TC002 From COPTC Where TC004 = N'A001')
    Delete From COPTC Where TC004 = N'A001'--2.
    Insert Into COPTD
    Values('1800','20150331001','0004','TEST','测试','测试',100,10,1000)