Как сложить строку и число - MySQL
Формулировка задачи:
Здравствуйте Уважаемые!
Столкнулся с проблемой.
В таблице есть CHAR и INT, требуется сложить их в строку.
Пример:
в первой строке
текст = 123.АБВ
число 1 = 120
Результат сложения должен получиться 123.АБВ120
Делаю запрос:
Сама таблица:
Подскажите как правильно преобразовать int в char и сложить два текста.
mysql> select text + num from ttt where (`ttt`.`id` = '1'); +------------+ | text + num | +------------+ | 243 | +------------+ 1 row in set mysql> select text + CONCAT(num) from ttt where (`ttt`.`id` = '1'); +--------------------+ | text + CONCAT(num) | +--------------------+ | 243 | +--------------------+ 1 row in set
CREATE TABLE `ttt` (
`id` int(3) NOT NULL AUTO_INCREMENT,
`text` char(15) COLLATE utf8_bin NOT NULL,
`num` int(5) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
INSERT INTO `ttt` VALUES ('1', '123.АБВ', '120');
INSERT INTO `ttt` VALUES ('2', '124ППП', '121');
INSERT INTO `ttt` VALUES ('3', 'ККК90', '65');Решение задачи: «Как сложить строку и число»
textual
Листинг программы
select CONCAT(text, num) as itog from ttt where id = '1'
Объяснение кода листинга программы
В данном коде выполняется операция конкатенации (сложения) строки и числа. Список элементов кода:
select— ключевое слово для выбора данных из базы данных.CONCAT— функция для конкатенации (сложения) строк.text— переменная, содержащая строку.num— переменная, содержащая число.as— ключевое слово для присвоения имени результату запроса.itog— имя, присвоенное результату запроса.from— ключевое слово для указания таблицы, из которой выбираются данные.ttt— название таблицы.where— ключевое слово для указания условия выборки данных.id— переменная, содержащая значение условия.'1'— значение переменнойid, которое соответствует условию выборки. Таким образом, в результате выполнения данного кода будет выполнена операция сложения строки и числа, и результат будет содержать только одно значение, которое будет содержать сумму строки и числа.