在 SQL 语句中,表名存在别名即 table_name [AS] alias,必须写表别名,才能使 Hint 生效。

在 SQL 语句中,表名存在别名即 table_name [AS] alias,必须写表别名,才能使 Hint 生效。
为什么呢

1 个赞

在使用 Hint(特别是 INDEX Hint)时,如果 SQL 语句中存在表别名(即 table_name [AS] alias),必须使用该别名来指定 Hint 才能生效。这是因为 Hint 需要绑定到具体的查询对象,而别名在查询逻辑中代表了实际的源数据对象。

1 个赞

那我直接用table_name也可以吧

1 个赞

https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002016228

有别名必须用别名

表有别名不用,用表名可能不生效

3 个赞

不用纠结为什么,因为使用规则就是这样