fill__CRM_PROCES_idx_TEMP.sql 1.4 KB

1234567891011121314151617181920212223242526272829303132
  1. DROP TABLE IF EXISTS `CRM_PROCES_idx_TEMP`;
  2. -- Mysql BUG: "Can't reopen table" -- CREATE TEMPORARY TABLE `CRM_PROCES_idx_TEMP` (
  3. -- You cannot refer to a TEMPORARY table more than once in the same query.
  4. CREATE TABLE IF NOT EXISTS `CRM_PROCES_idx_TEMP` (
  5. `ID_PROCES` int(11) NOT NULL
  6. , `PARENT_ID` int(11) NOT NULL DEFAULT '0'
  7. , `TYPE` varchar(32) NOT NULL DEFAULT ''
  8. , `idx_PROCES_INIT_ID` int(11) NOT NULL DEFAULT '0'
  9. , `idx_MAIN_PROCES_INIT_ID` int(11) NULL DEFAULT '0'
  10. , `idx_PROCES_WITH_GROUPS_ID` int(11) NULL DEFAULT NULL
  11. -- , `idx_PATH` text NOT NULL
  12. , KEY `ID_PROCES` ( `ID_PROCES` )
  13. , KEY `PARENT_ID` ( `PARENT_ID` )
  14. , KEY `idx_PROCES_INIT_ID` ( `idx_PROCES_INIT_ID` )
  15. , KEY `idx_MAIN_PROCES_INIT_ID` ( `idx_MAIN_PROCES_INIT_ID` )
  16. , KEY `idx_PROCES_WITH_GROUPS_ID` ( `idx_PROCES_WITH_GROUPS_ID` )
  17. , UNIQUE KEY `uniq__idx_PROCES_WITH_GROUPS_ID` ( `ID_PROCES`, `idx_PROCES_WITH_GROUPS_ID` )
  18. )
  19. -- I.1--truncate-table
  20. truncate table `CRM_PROCES_idx_TEMP`;
  21. -- I.2--fill-CRM_PROCES_idx_TEMP
  22. insert into `CRM_PROCES_idx_TEMP` ( `ID_PROCES`, `TYPE`, `PARENT_ID`, `idx_PROCES_INIT_ID`, `idx_MAIN_PROCES_INIT_ID` )
  23. select p.`ID` as `ID_PROCES`
  24. , p.`TYPE` as `TYPE`
  25. , p.`PARENT_ID` as `PARENT_ID`
  26. , IF( p.`TYPE` = 'PROCES_INIT', p.`ID`, 0 ) as `idx_PROCES_INIT_ID`
  27. , IF( p.`TYPE` = 'PROCES_INIT', p.`ID`, 0 ) as `idx_MAIN_PROCES_INIT_ID`
  28. from `CRM_PROCES` p
  29. where p.`A_STATUS` in ( 'NORMAL', 'WAITING' )
  30. ;