Existem duas colunas em uma tabela MySQL: SUBJECTe YEAR.
Desejo gerar um número alfanumérico exclusivo que contém os dados concatenados de SUBJECT e YEAR.
Como posso fazer isso? É possível usar um operador simples como +?
Existem duas colunas em uma tabela MySQL: SUBJECTe YEAR.
Desejo gerar um número alfanumérico exclusivo que contém os dados concatenados de SUBJECT e YEAR.
Como posso fazer isso? É possível usar um operador simples como +?
Respostas:
Você pode usar a CONCATfunção desta forma:
SELECT CONCAT(`SUBJECT`, ' ', `YEAR`) FROM `table`
Atualizar:
Para obter esse resultado, você pode tentar o seguinte:
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
Você pode usar o php embutido em CONCAT () para isso.
SELECT CONCAT(`name`, ' ', `email`) as password_email FROM `table`;
mude o nome do arquivo conforme sua necessidade
então o resultado é
e se você quiser concatenar o mesmo campo usando outro campo que então
SELECT filed1 as category,filed2 as item, GROUP_CONCAT(CAST(filed2 as CHAR)) as item_name FROM `table` group by filed1
No php, temos duas opções para concatenar as colunas da tabela.
Primeira opção usando consulta
Na consulta, a palavra-chave CONCAT usada para concatenar duas colunas
SELECT CONCAT(`SUBJECT`,'_', `YEAR`) AS subject_year FROM `table_name`;
Segunda opção usando o símbolo (.)
Depois de buscar os dados da tabela do banco de dados, atribua os valores à variável, usando o símbolo (.) E concatene os valores
$subject = $row['SUBJECT'];
$year = $row['YEAR'];
$subject_year = $subject . "_" . $year;
Em vez de sublinhado (_), usaremos os espaços, vírgulas, letras, números ... etc.
Em consulta, CONCAT_WS()função.
Essa função não apenas adiciona vários valores de string como os torna um único valor de string. Também permite definir o separador (”“, ”,“, ”-“, ”_“, etc.).
Sintaxe -
CONCAT_WS( SEPERATOR, column1, column2, ... )
Exemplo
SELECT
topic,
CONCAT_WS( " ", subject, year ) AS subject_year
FROM table
SELECT CONCACT(SUBJECT, ' ', YEAR)realmente me ajudou. +1