mysql - 带有前导空格的列别名导致错误 : Unknown column 'BAR. COL1' in 'field list'

标签 mysql sql whitespace alias

我正在开发一个实用程序,该实用程序公开来自具有机器生成的表/列名称的仓库的数据。允许用户为表/列指定新名称以使结果更有意义。别名可以是任何有效的 MySQL 标识符名称,但我发现包含前导空格的列名存在问题。现在我知道这将是一个愚蠢的列名称,但我不想仅仅因为我懒惰而找不到正确的方法来对用户施加任何任意限制。

这个简单的 SQL 语句重现了这个问题:

SELECT ` COL1` FROM (SELECT 1 AS ` COL1`) BAR

错误代码:1054。“字段列表”中的未知列“COL1”

我错过了什么吗?我正在使用 MySQL 5.6.11。

最佳答案

你能检索表结构吗?想要查看表 BAR 的实际列名。 运行上面的查询时,MSSQL 会删除列名中的所有空格。

关于mysql - 带有前导空格的列别名导致错误 : Unknown column 'BAR. COL1' in 'field list' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19369583/

相关文章:

sql - 大于或小于运算符和版本

sql - 外键可以提高查询性能吗?

whitespace - 如何在保存时删除 Visual Studio 2012 中的尾随空格?

java - 如何用 "@"替换所有空行?

mysql - SQL 中的多个 LEFT JOIN 运行缓慢。我该如何优化它?

python - 类型错误 : 'str' object is not callable - When filling database

mysql - 如何在 group_concat() 中使用 sum()?

mysql - SQL COUNT() 查询放置

c++ - boost 正则表达式不匹配 "\\s"到空格

php - 在 Mysql PHP 查询中组合 Where 子句