mysql - WHERE 中的 SQL GROUP_CONCAT 别名

标签 mysql sql

这是我的sql语句:

SELECT 
    tA.a1, GROUP_CONCAT(tB.b2) AS b2
FROM
    tableA tA
        LEFT JOIN
    tableB tB ON tA.a2 = tB.b1
WHERE
    CONCAT(tA.a1, b2) LIKE '%somestring%'
GROUP BY tA.a1;

我收到一条 sql 错误,提示类似“WHERE 中的未知列名 b2”。

最佳答案

SELECT 
    tA.a1, GROUP_CONCAT(tB.b2) AS b2
FROM
    tableA tA
        LEFT JOIN
    tableB tB ON tA.a2 = tB.b1
GROUP BY tA.a1
HAVING
    CONCAT(tA.a1, b2) LIKE '%somestring%';

关于mysql - WHERE 中的 SQL GROUP_CONCAT 别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21133538/

相关文章:

php - MySQL INSERT INTO 不执行任何操作 - 甚至没有错误

sql - 查询表达式 '* b_forte ORDER BY ProdDate DESC' 错误消息中的语法错误(缺少运算符)

sql - 什么是 "Selective Query"

mySQL - 没有条目时显示 0。

MySQl 字段类型

mysql - 我可以优化这个 MySQL 查询吗?

php - 如何从表 B 中选择属于表 A 的缺失表行?

sql - SSIS 导出到 CSV 文件失败

SQL Azure - 在数据库之间复制表

sql - Oracle:将任意列表与从表中选择相结合