我有 2 张 table 。
第一个表
| idgroup | namegroup
第二个表
| idrequest | col1 | col2 | N1 | N2 | date_extract |
我想使用 concat_ws
连接表
SELECT
tb1.*,tb2.*,
CONCAT_WS("_",tb2.N1, tb2.N2) AS GR,
FROM
table2 tb2
INNER JOIN table1 tb1 ON tb1.namegroup= tb2.GR
WHERE
tb2.date_extract = "2015-02-13"
这可能吗?那怎么办?
最佳答案
我正在盲目尝试。除了 date() 转换为 tb2.date_extract
之外,没有什么变化 - 如果 date_extract
的类型为 TIMESTAMP
或 DATETIME,则获取日期值
.
SELECT
tb1.*,tb2.*,
CONCAT_WS("_",tb2.`N1`, tb2.`N2`) AS `GR`,
FROM
table2 tb2
INNER JOIN table1 tb1 ON tb1.`namegroup`= tb2.GR
WHERE
date(tb2.`date_extract`) = "2015-02-13"
如果这不是您的问题,请发布带有问题的错误消息。
更新:您可以简单地使用 GR
而不是 tbl2.GR
需要使用结果的命名空间
SELECT
tb1.*, tb2.*, CONCAT_WS("_",tb2.`N1`, tb2.`N2`) AS `GR`,
FROM table2 tb2
INNER JOIN table1 tb1 ON tb1.`namegroup`= `GR`
WHERE
date(tb2.`date_extract`) = "2015-02-13"
-现在让我知道进展如何?
关于Mysql 内连接与 concat_ws,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28537132/