Ci sono due colonne in una tabella MySQL: SUBJECT
e YEAR
.
Voglio generare un numero univoco alfanumerico che contiene i dati concatenati da SUBJECT e YEAR.
Come posso fare questo? È possibile utilizzare un operatore semplice come +
?
Ci sono due colonne in una tabella MySQL: SUBJECT
e YEAR
.
Voglio generare un numero univoco alfanumerico che contiene i dati concatenati da SUBJECT e YEAR.
Come posso fare questo? È possibile utilizzare un operatore semplice come +
?
Risposte:
Puoi usare la CONCAT
funzione in questo modo:
SELECT CONCAT(`SUBJECT`, ' ', `YEAR`) FROM `table`
Aggiornare:
Per ottenere quel risultato puoi provare questo:
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
Puoi usare php integrato in CONCAT () per questo.
SELECT CONCAT(`name`, ' ', `email`) as password_email FROM `table`;
cambiare il nome del file come requisito
allora il risultato è
e se vuoi concatenare lo stesso file usando un altro campo che lo stesso allora
SELECT filed1 as category,filed2 as item, GROUP_CONCAT(CAST(filed2 as CHAR)) as item_name FROM `table` group by filed1
In php, abbiamo due opzioni per concatenare le colonne della tabella.
Prima opzione utilizzando Query
Nella query, la parola chiave CONCAT utilizzata per concatenare due colonne
SELECT CONCAT(`SUBJECT`,'_', `YEAR`) AS subject_year FROM `table_name`;
Seconda opzione utilizzando il simbolo (.)
Dopo aver recuperato i dati dalla tabella del database, assegnare i valori alla variabile, quindi utilizzare (.) Simbolo e concatenare i valori
$subject = $row['SUBJECT'];
$year = $row['YEAR'];
$subject_year = $subject . "_" . $year;
Invece del trattino basso (_), useremo spazi, virgole, lettere, numeri ... ecc
In query, CONCAT_WS()
funzione.
Questa funzione non solo aggiunge più valori di stringa e li rende un unico valore di stringa. Consente inoltre di definire il separatore ("", ",", "-", "_", ecc.).
Sintassi -
CONCAT_WS( SEPERATOR, column1, column2, ... )
Esempio
SELECT
topic,
CONCAT_WS( " ", subject, year ) AS subject_year
FROM table
SELECT CONCACT(SUBJECT, ' ', YEAR)
mi ha davvero aiutato. +1