gpt4 book ai didi

mysql - 在 mysql where 子句中通过其索引引用列

转载 作者:行者123 更新时间:2023-11-29 07:01:41 25 4
gpt4 key购买 nike

我数据库中的所有表总是有一个 id(自动增量),在第 0 列,不管它的名称如何,它总是在那里。

所以,在表 teste 中我可能有 idTeste,在表 cars 中我应该有 idCars,但是格式不是标准的,我可以有一个表 example,其中有一列简单地称为 id

我正在尝试创建一个通用更新,例如:

update tablename set bla='ble' where column[0]='id';

所以,不管列的名称如何,我希望通过它的 ID 来引用它。这可能吗?

我知道我可以这样做:

show columns from table

并在执行我的更新之前选择名字,事实上,我这样做是为了解决我的问题,但我很好奇这是否可行。

最佳答案

您所追求的称为序数位置,或简称为“序数”。

SQL 不支持在 WHERE 子句中使用序号。对序号的支持因数据库供应商而异——最常见的支持是在 ORDER BY 子句中:

ORDER BY 2, 1

...它依赖于 SELECT 子句中列出的列。一些支持 GROUP BY 子句中的序号。

也就是说,不推荐使用序号,因为它取决于 SELECT 子句中列的顺序。如果该订单在没有更新 ORDER BY/etc 的情况下发生变化,您将在运行时才能知道。

关于mysql - 在 mysql where 子句中通过其索引引用列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9849302/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com