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]