Hi All,
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`)
) ENGINE=InnoDB;
Question:
1)
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
(id, 20))
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), "[EMAIL PROTECTED]");
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,
Mariella
____________________________________________________________________________________
Luggage? GPS? Comic books?
Check out fitting gifts for grads at Yahoo! Search
http://search.yahoo.com/search?fr=oni_on_mail&p=graduation+gifts&cs=bz
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]