rendered paste body
FLUSH TABLES;
CREATE TABLE IF NOT EXISTS `list_numbers_{ID}` (
`ln_id` bigint unsigned NOT NULL auto_increment,
`list_id` int default NULL,
`ln_number` bigint NOT NULL,
`ln_loc` varchar(10) default NULL,
`ln_state` varchar(2) default NULL,
`ln_npa` smallint default NULL,
`ln_nxx` smallint default NULL,
`ln_nnnn` int default NULL,
`ln_ocn` varchar(5) default NULL,
`ln_lata` mediumint default NULL,
`ln_tier` varchar(20) default NULL,
`ln_rate` decimal(6,4) default NULL,
PRIMARY KEY (`ln_id`),
INDEX `NUM1{ID}` (`list_id`),
INDEX `NUM2{ID}` (`ln_npa`),
INDEX `NUM3{ID}` (`ln_state`),
UNIQUE INDEX `NUM4{ID}` (`ln_number`),
UNIQUE INDEX `NUM5{ID}` (`ln_number`, `ln_npa`, `list_id`),
UNIQUE INDEX `NUM6{ID}` (`ln_number`, `ln_state`, `list_id`),
UNIQUE INDEX `NUM7{ID}` (`ln_number`, `ln_npa`),
UNIQUE INDEX `NUM8{ID}` (`ln_number`, `ln_state`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
analyze table list_numbers_{ID};
delete from templist_{ID}
Where number in (select ln_number from list_numbers_{ID});
alter table templist_{ID} engine = MyISAM;
ALTER TABLE list_numbers_{ID} DISABLE KEYS;
LOCK TABLES list_numbers_{ID} WRITE, templist_{ID} READ;
insert into list_numbers_{ID} (ln_number, list_id, ln_loc, ln_state, ln_npa, ln_nxx, ln_nnnn, ln_ocn, ln_lata, ln_tier, ln_rate)
select distinct number, (Select {list_id}), loc, state, npa, nxx, nnnn, ocn, lata, tier, rate
from templist_{ID};
UNLOCK TABLES;
ALTER TABLE list_numbers_{ID} ENABLE KEYS;