Подтвердить что ты не робот

MYSQL вставляется случайным образом из списка

Я хотел бы добавить случайное значение в таблицу. Хотя я знаю, как добавлять случайные целые числа в пределах диапазона, я в настоящее время тупик о том, как добавить случайно выбранный элемент из списка.

Скажем, у меня есть таблица MYSQL для учетных записей IM. Я хотел бы заполнить его случайными данными.

INSERT INTO `im` (`im`, `service`)
SELECT LOWER(`last`), RANDOM-SELECTION-HERE
FROM `contact`;

Что должен сделать этот запрос, так это добавить в таблицу IM имя контакта со случайным выбором из массива, который я бы дал. Например, массив будет выглядеть следующим образом:

['AIM', 'ICQ', 'MSN', 'Yahoo', 'GTalk', 'Other']

Итак, я хотел бы добавить имя пользователя и один из случайных элементов из массива.

ПРИМЕЧАНИЕ. Я знаю, что это вполне возможно с помощью языка программирования, такого как PHP, Perl и т.д., но я не пытаюсь это сделать. Пожалуйста, постарайтесь сделать это строго с помощью MYSQL.

4b9b3361

Ответ 1

INSERT INTO `im`
(`im`, `service`)
SELECT LOWER(`last`),
    ELT(0.5 + RAND() * 6, 'AIM', 'ICQ', 'MSN', 'Yahoo', 'GTalk', 'Other')
FROM `contact`

Ответ 2

Если вы хотите добавить службы в другую таблицу...

INSERT INTO `im` ( `im` , `service` )
SELECT LOWER( `last` ) , (
   SELECT `service`
   FROM `service`
   ORDER BY RAND( )
   LIMIT 1
)
FROM `contact`