首页 > 解决方案 > 如何在一个查询中使用 Concat() & Substring?

问题描述

出于提问目的,我将在示例中使用最少的数据。

我有一个名为的表table1和一个名为的列test,如下所示:

test
5012 

我可以使用此查询列的结果之前添加一个额外的零:test

SELECT CONCAT('0',test) as x from table1

这是查询的结果:

结果表:table1

  x
05012

现在我有另一个表,table2看起来像这样:

test    test2
05012     1

我的问题是,如何根据上面的查询将两个表连接在一起并连接withtable1列?确保两个表中两列的前 4 个字符匹配在一起?test2table2test

这就是表 1 的样子:

 Afterquery
  050121

标签: mysqlsqlmysql-workbench

解决方案


我认为这应该是解决方案。你需要在和concat之间的连接中使用table1table2

SELECT CONCAT('0', table1.test, table2.test2) AS Afterquery
FROM table1
INNER JOIN table2
ON CONCAT('0',table1.test) = table2.test

推荐阅读