Problem Note 61414: Incorrect results are returned when you use a DISTINCT or COUNT(*) function in an SQL procedure
You might receive incorrect results if you use DISTINCT or COUNT(*) in an SQL procedure similar to the following SAS® program:
data A_TABELA;
input A_PK;
datalines;
11
12
13
14
15
.
;
run;
data B_TABELA;
input B_PK;
datalines;
12
13
.
15
;
run;
/* DISTINCT gives incorrect row count. Expected 2 rows */
PROC SQL feedback;
CREATE TABLE ZAPYTANIE1 AS
SELECT DISTINCT CZY_W_B_TABELI FROM
(select DISTINCT A_PK, 1 as CZY_W_A_TABELI from A_TABELA WHERE A_PK NOT IS NULL) as a
FULL JOIN
(select DISTINCT B_PK, 1 as CZY_W_B_TABELI from B_TABELA WHERE B_PK NOT IS NULL) as b
on a.A_PK = b.B_PK
;
QUIT;
/* COUNT() gives incorrect row count. Expected 2 rows */
PROC SQL feedback;
CREATE TABLE ZAPYTANIE2 AS
SELECT CZY_W_B_TABELI,COUNT(*) AS ILE FROM
(select DISTINCT A_PK, 1 as CZY_W_A_TABELI from A_TABELA WHERE A_PK NOT IS NULL) as a
FULL JOIN
(select DISTINCT B_PK, 1 as CZY_W_B_TABELI from B_TABELA WHERE B_PK NOT IS NULL) as b
on a.A_PK = b.B_PK
GROUP BY CZY_W_B_TABELI
;
QUIT;
Click the Hot Fix tab in this note to access the hot fix for this issue.
Operating System and Release Information
SAS System | Base SAS | z/OS | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
z/OS 64-bit | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft® Windows® for x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows 8 Enterprise 32-bit | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows 8 Enterprise x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows 8 Pro 32-bit | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows 8 Pro x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows 8.1 Enterprise 32-bit | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows 8.1 Enterprise x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows 8.1 Pro 32-bit | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows 8.1 Pro x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows 10 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows Server 2008 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows Server 2008 R2 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows Server 2008 for x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows Server 2012 Datacenter | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows Server 2012 R2 Datacenter | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows Server 2012 R2 Std | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Microsoft Windows Server 2012 Std | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Windows 7 Enterprise 32 bit | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Windows 7 Enterprise x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Windows 7 Home Premium 32 bit | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Windows 7 Home Premium x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Windows 7 Professional 32 bit | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Windows 7 Professional x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Windows 7 Ultimate 32 bit | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Windows 7 Ultimate x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
64-bit Enabled AIX | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
64-bit Enabled Solaris | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
HP-UX IPF | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Linux for x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
Solaris for x64 | 9.4_M4 | 9.4_M5 | 9.4 TS1M4 | 9.4 TS1M5 |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
Type: | Problem Note |
Priority: | alert |
Date Modified: | 2018-01-11 15:01:37 |
Date Created: | 2017-11-15 08:41:21 |