首页  >  文章  >  数据库  >  如何使用 MySQL SELECT 和 CONCAT 连接和比较字符串:避免'未知列”错误?

如何使用 MySQL SELECT 和 CONCAT 连接和比较字符串:避免'未知列”错误?

DDD
DDD原创
2024-11-20 15:40:12802浏览

How to Concatenate and Compare Strings Using MySQL SELECT with CONCAT: Avoiding the “Unknown Column” Error?

使用 MySQL SELECT 和 CONCAT 条件

使用包含名字和姓氏字段的表时,常见的任务是将它们连接成用于比较或过滤目的的单个字符串。然而,在对连接字符串使用别名时遇到“未知列”错误可能会令人费解。

要克服这个问题,必须了解别名仅适用于查询的输出,而不适用于查询的输出。查询本身。要连接和比较字符串,您有两种选择:

重复连接:

SELECT neededfield, CONCAT(firstname, ' ', lastname) as firstlast
FROM users
WHERE CONCAT(firstname, ' ', lastname) = "Bob Michael Jones"

通过在 WHERE 子句中重复连接表达式,您可以确保正在比较实际的连接值。

使用子查询:

SELECT * FROM (
    SELECT neededfield, CONCAT(firstname, ' ', lastname) as firstLast
    FROM users
) base
WHERE firstLast = "Bob Michael Jones"

通过将查询包装在子查询中,您可以创建一个带有别名 (在此示例中为“base”),其中包含连接的字符串作为列。然后,您可以使用所需的比较来过滤此临时表。

以上是如何使用 MySQL SELECT 和 CONCAT 连接和比较字符串:避免'未知列”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn