0_update_data_relation_appendix_1.sql 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. DROP PROCEDURE IF EXISTS update_data_relation_appendix_1;
  2. DELIMITER $$
  3. CREATE PROCEDURE update_data_relation_appendix_1(
  4. IN preDocId BIGINT(20),
  5. IN appendixIdOffset BIGINT(20),
  6. IN docIdOffset BIGINT(20))
  7. BEGIN
  8. # 相关图片
  9. delete from relphoto_doc;
  10. set @p_sql = CONCAT('insert into relphoto_doc(docid, appendixids) SELECT
  11. a.DOCID + ',docIdOffset,',
  12. GROUP_CONCAT(a.MATERIALQUOTEID + ',appendixIdOffset,')
  13. FROM
  14. xwcmmaterialquote a
  15. LEFT JOIN xwcmmaterial b ON a.MATERIALID = b.MATERIALID
  16. WHERE
  17. b.MATERIALTYPE = 1 and a.DOCID >',preDocId,'
  18. GROUP BY a.DOCID;');
  19. prepare stmt from @p_sql;
  20. EXECUTE stmt;
  21. deallocate prepare stmt;
  22. #相关视频
  23. delete from relvideo_doc;
  24. set @v_sql = CONCAT('insert into relvideo_doc(docid, appendixids) SELECT
  25. a.DOCID + ',docIdOffset,' AS docid,
  26. GROUP_CONCAT(a.MATERIALQUOTEID + ',appendixIdOffset,') AS appendixids
  27. FROM
  28. xwcmmaterialquote a
  29. LEFT JOIN xwcmmaterial b ON a.MATERIALID = b.MATERIALID
  30. WHERE
  31. b.MATERIALTYPE = 2 and a.DOCID >',preDocId,'
  32. GROUP BY a.DOCID;');
  33. prepare stmt from @v_sql;
  34. EXECUTE stmt;
  35. deallocate prepare stmt;
  36. END $$
  37. DELIMITER ;