如何在Google Cloud Spanner查询中强制使用主键索引?
Google Cloud Spanner 强制使用主键索引的语法
Google Cloud Spanner的主键索引是系统自动为表创建的内置索引,根据你使用的SQL模式(标准SQL/PostgreSQL兼容模式),强制使用主键索引的语法有所区别:
标准SQL模式
标准SQL中,主键索引的固定名称为PRIMARY_KEY,使用FORCE_INDEX子句强制指定:
SELECT * FROM YourTableName FORCE_INDEX(PRIMARY_KEY) WHERE your_column = 'target_value';
PostgreSQL兼容模式
PostgreSQL兼容模式下,系统默认生成的主键索引名称为表名_pkey(表名会自动转为小写),使用INDEX提示语法强制指定:
SELECT * FROM your_table_name INDEX (your_table_name_pkey) WHERE your_column = 'target_value';
注:仅当查询优化器未自动选择主键索引作为最优执行路径时,才需要手动强制指定,日常场景优先依赖优化器的自动选择。
内容的提问来源于stack exchange,提问作者can.
相关产品推荐
相关产品推荐

