FIX: Correlated Subquery in Select List w/ ANSI JOIN Causes AV

ID: Q164293


The information in this article applies to:

BUG #: 16586 (Windows NT: 6.5)

SYMPTOMS

A query using a correlated subquery in the select list combined with an ANSI JOIN may cause a handled access violation (AV). The client connection will be terminated when the query is run.



WORKAROUND

To work around this problem, change the query to avoid using the non-ANSI syntax (that is, the = operator) for the join in the subselect.


STATUS

Microsoft has confirmed this to be a problem in Microsoft SQL Server version 6.5 Service Pack 2. This problem has been corrected in U.S. Service Pack 3 for Microsoft SQL Server version 6.5. For more information, contact your primary support provider.


MORE INFORMATION

The following is an example query that results in the handled access violation:


SELECT (SELECT count(*) FROM master_table
JOIN Status ON master_table.ID = Status.ID
AND Status.Code = 'COMPLETE'
WHERE  target_table.ID = master_table.ID
) FROM   target_table
   go 


Keywords          : kbusage SSrvTran_SQL kbbug6.50.sp2 
Version           : 6.5 SP2
Platform          : WINDOWS 
Issue type        : kbbug 

Last Reviewed: April 8, 1999