Jump to content

Hint (SQL)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 167.179.135.114 (talk) at 06:08, 30 September 2022 (Postgres Plus Advanced Server is now called EDB Postgres Advanced Server). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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

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

References

  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
  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