连接两列

MySQL 表中有两列: SUBJECTYEAR

我想生成一个字母数字的唯一数字,其中包含来自 SUBJECT 和 YEAR 的连接数据。

我怎样才能做到这一点? 是否有可能使用一个简单的操作符,如 +

257031 次浏览

You can use the CONCAT function like this:

SELECT CONCAT(`SUBJECT`, ' ', `YEAR`) FROM `table`

更新:

为了得到这个结果,你可以试试这个:

SET @rn := 0;


SELECT CONCAT(`SUBJECT`,'-',`YEAR`,'-',LPAD(@rn := @rn+1,3,'0'))
FROM `table`

在 php 中,我们有两个选项来连接表列。

使用 Query 的第一个选项

在查询中,康凯特关键字用于连接两列

SELECT CONCAT(`SUBJECT`,'_', `YEAR`) AS subject_year FROM `table_name`;

使用符号(.)的第二个选项

从数据库表中提取数据后,将值赋给变量,然后使用 (.)符号并连接这些值

$subject = $row['SUBJECT'];
$year = $row['YEAR'];
$subject_year = $subject . "_" . $year;

Instead of underscore( _ ) , we will use the spaces, comma, letters,numbers..etc

可以使用内置在 CONCAT ()中的 mysql。

SELECT CONCAT(`name`, ' ', `email`) as password_email FROM `table`;

根据您的要求更改字段名称

那么结果就是

enter image description here

如果你想用其他字段连接同一个字段

SELECT filed1 as category,filed2 as item, GROUP_CONCAT(CAST(filed2 as CHAR)) as item_name FROM `table` group by filed1

这就是输出 enter image description here

$crud->set_relation('id','students','{first_name} {last_name}');
$crud->display_as('student_id','Students Name');

在查询中,CONCAT_WS()函数。

此函数不仅添加多个字符串值,而且使它们成为单个字符串值。它还允许您定义分隔符(“ ,”,“ ,”-“ ,”_“ ,等等)。

Syntax –

CONCAT_WS( SEPERATOR, column1, column2, ... )

Example

SELECT
topic,
CONCAT_WS( " ", subject, year ) AS subject_year
FROM table

I have two columns: prenom and nom so to concatenate into a column with name chauffeur_sortant I used this script:

SELECT date as depart, retour, duree_mission, duree_utilisation, difference, observation, concat( tb_chaufeur_sortant.prenom, ' ', tb_chaufeur_sortant.nom) as chauffeur_sortant, concat(tb_chaufeur_entrant.prenom, ' ', tb_chaufeur_entrant.nom) as chauffeur_entrant
FROM tb_passation
INNER JOIN tb_vehicule
ON tb_vehicule.id = tb_passation.id_vehicule
INNER JOIN tb_chaufeur_sortant
ON tb_chaufeur_sortant.id = tb_passation.id_sortant
INNER JOIN tb_chaufeur_entrant
ON tb_chaufeur_entrant.id = tb_passation.id_entrant WHERE tb_vehicule.id = '';