小编典典

在mysql中使用列号而不是名称进行选择

sql

有什么办法可以做这样的事情:

SELECT * FROM TABLE WHERE COLUMN_NUMBER = 1;


阅读 220

收藏
2021-04-19

共1个答案

小编典典

如果您的表中有一个名为的列,COLUMN_NUMBER并且您想从该表中包含该行的值为‘1’的行中检索行,那么该查询就可以解决问题。

我怀疑您要执行的操作是使用别名在选择列表中引用一个表达式。那是不被支持的。WHERE子句中引用列的表达式必须按名称引用该列。

我们可以使用内联视图玩一些技巧,为表达式赋予别名,但这在WHERE谓词方面效率不高,因为MySQL实现了派生表的方式。并且,在这种情况下,它是必须在外部查询中引用的内联视图中列的名称。

2021-04-19