Apollo红外反射成像设备与普通红外成像的差别
2025/12/17 12:59:53
SELECT 语句的选项是影响其处理方式的标志。由于选项之间的兼容性规则过于复杂,难以在语法中编码,因此我们接受任意选项集,并构建一个位掩码来诊断重复选项。
以下是相关规则代码:
select_opts: { $$ = 0; } | select_opts ALL { if($1 & 01) yyerror("duplicate ALL option"); $$ = $1 | 01; } | select_opts DISTINCT { if($1 & 02) yyerror("duplicate DISTINCT option"); $$ = $1 | 02; } | select_opts DISTINCTROW { if($1 & 04) yyerror("duplicate DISTINCTROW option"); $$ = $1 | 04; } | select_opts HIGH_PRIORITY { if($1 & 010) yyerror("duplicate HIGH_PRIORITY option"); $$ = $1 | 010; } | select_opts STRAIGHT_JOIN { if($1 & 020) yyerror("duplicate STRAIGHT_JOIN option"); $$