In various SQL implementations, a hint is an addition to the SQL standard that instructs the database engine on how to execute the query. For example, a hint may tell the engine to use or not to use an index (even if the query optimizer would decide otherwise).

Implementation

edit

Different database engines use different approaches in implementing hints.

  • MySQL uses its own extension to the SQL standard, where a table name may be followed by USE INDEX, FORCE INDEX or IGNORE INDEX keywords.[1]
  • Oracle implements hints by using specially-crafted comments in the query that begin with a + symbol, thus not affecting SQL compatibility.[2]
  • EDB Postgres Advanced Server (a proprietary version of PostgreSQL from EnterpriseDB) offers hints compatible with those of Oracle.[3][4]
  • Microsoft SQL Server offers hints via the OPTION keyword [5]

See also

edit

References

edit
  1. ^ MySQL 5.5 Reference Manual: 12.2.9.3 Index Hint Syntax
  2. ^ Mike Ault: Oracle SQL Hints Tuning
  3. ^ "Postgres Plus Advanced Server Performance and Scalability Guide: Query Optimization Hints". Archived from the original on 2014-04-19. Retrieved 2013-06-24.
  4. ^ "Postgres Plus Advanced Server Oracle Compatibility Developer's Guide: Optimizer Hints". Archived from the original on 2014-04-19. Retrieved 2013-06-24.
  5. ^ MSSQL 2017 Documentation