Привет.
Ребята помогите составить запрос, чтобы он: выбрал все записи из таблицы ids, выбрать поле nimo (varchar), и до строки nimo добавить в конец какую нибудь цифру или букву. Например выбираем, попадается слово: test, и в конец нужно добавить цифру или букву и в результате получается test1 либо testa.
Спасибо!
1. event - 20 Августа, 2013 - 23:57:02 - перейти к сообщению
2. EuGen - 21 Августа, 2013 - 00:28:52 - перейти к сообщению
Самое простое - сделать через переменную. Например, так:
CODE (SQL):
скопировать код в буфер обмена
скопировать код в буфер обмена
- SET @i=0;
- SELECT *, CONCAT(nimo, @i:=@i+1) AS nimo_field FROM `table`
- этим будет достигнута уникальность, но значения будут, во-первых, сквозными через всю таблицу, а, во-вторых, только числовые.
Можно сделать сложнее - через вычисление случайного значения:
CODE (SQL):
скопировать код в буфер обмена
скопировать код в буфер обмена
- SELECT *, CONCAT(nimo, CHAR(FLOOR(32+RAND()*64))) AS nimo_field FROM `table`
- это равносильно случайному символу в диапазоне ASCII [32..32+64] - то есть [32..96] (желаемые значения подстроите самостоятельно)