В таблице MySQL есть два столбца: SUBJECT
и YEAR
.
Я хочу создать буквенно-цифровой уникальный номер, содержащий объединенные данные из SUBJECT и YEAR.
Как я могу это сделать? Можно ли использовать простой оператор вроде +
?
В таблице MySQL есть два столбца: SUBJECT
и YEAR
.
Я хочу создать буквенно-цифровой уникальный номер, содержащий объединенные данные из SUBJECT и YEAR.
Как я могу это сделать? Можно ли использовать простой оператор вроде +
?
Ответы:
Вы можете использовать эту CONCAT
функцию так:
SELECT CONCAT(`SUBJECT`, ' ', `YEAR`) FROM `table`
Обновить:
Чтобы получить такой результат, вы можете попробовать следующее:
SET @rn := 0;
SELECT CONCAT(`SUBJECT`,'-',`YEAR`,'-',LPAD(@rn := @rn+1,3,'0'))
FROM `table`
SUBJECT
, ''), '-', IFNULL ( YEAR
, ''), '-', LPAD (@rn: = @ rn + 1,3, '0')) FROMtable
Для этого вы можете использовать php, встроенный в CONCAT ().
SELECT CONCAT(`name`, ' ', `email`) as password_email FROM `table`;
измените имя файла в соответствии с вашими требованиями
тогда результат
и если вы хотите объединить одно и то же поле, используя другое поле, которое то же самое,
SELECT filed1 as category,filed2 as item, GROUP_CONCAT(CAST(filed2 as CHAR)) as item_name FROM `table` group by filed1
В php у нас есть два варианта объединения столбцов таблицы.
Первый вариант с использованием запроса
В запросе ключевое слово CONCAT используется для объединения двух столбцов
SELECT CONCAT(`SUBJECT`,'_', `YEAR`) AS subject_year FROM `table_name`;
Второй вариант с использованием символа (.)
После получения данных из таблицы базы данных присвойте значения переменной, затем используйте символ (.) И объедините значения
$subject = $row['SUBJECT'];
$year = $row['YEAR'];
$subject_year = $subject . "_" . $year;
Вместо подчеркивания (_) мы будем использовать пробелы, запятую, буквы, цифры и т. Д.
SELECT CONCACT(SUBJECT, ' ', YEAR)
мне очень помог. +1