Using parallel

The parallel option reduces the number of worker threads that the SAP ASE optimizer can use for parallel processing. The degree_of_parallelism cannot be greater than the configured max parallel degree. If you specify a value that is greater than the configured max parallel degree, the optimizer ignores the parallel option.

When multiple worker processes merge their results, the order of rows that the SAP ASE server returns may vary from one execution to the next. To get rows from partitioned tables in a consistent order, use an order by clause, or override parallel query execution by using parallel 1 in the from clause of the query.

A from clause specifying parallel is ignored if any of the following conditions is true:
  • The select statement is used for an update or insert.

  • The from clause is used in the definition of a cursor.

  • parallel is used in the from clause within any inner query blocks of a subquery.

  • The select statement creates a view.

  • The table is the inner table of an outer join.

  • The query specifies min or max on the table and specifies an index.

  • An unpartitioned clustered index is specified or is the only parallel option.

  • The query specifies exists on the table.

  • The value for the configuration parameter max scan parallel degree is 1 and the query specifies an index.

  • A nonclustered index is covered. For information on index covering, see Indexes in the Performance and Tuning Guide.

  • The table is a system table or a virtual table.

  • The query is processed using the OR strategy. For an explanation of the OR strategy, see the Performance and Tuning Guide.

  • The query returns a large number of rows to the user.