I have a table with a PRIMARY KEY on id field, whos
evalue is populated usin auto_increment.
CREATE TABLE `key` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`sid` smallint(4) unsigned NOT NULL DEFAULT '0',
`email` varchar(128) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
UNIQUE KEY `email` (`email`)
When I INSERT a row is there any way to be able in the
same INSERT statement (without doing an UPDATE after
the insert) to populate the field `sid`, which is base
on the value that the field `id` gets (e.g. sid= MOD
P.S. I cannot use the value of LAST_INSERT_ID, because
it is inappropriate in this case
P.S. I have tried to use the following, but it failed:
INSERT INTO key (sid,email) VALUES (MOD((select
max(id) from key) + 1, 20), "test@stripped");
ERROR 1093 (HY000): You can't specify target table
'key' for update in FROM clause
Could you please help ?
Thanks in advance for your help,
Luggage? GPS? Comic books?
Check out fitting gifts for grads at Yahoo! Search