Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
JOIN vs WHERE
Message
 
 
To
09/05/2003 14:28:46
Jay Johengen
Altamahaw-Ossipee, North Carolina, United States
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Title:
Miscellaneous
Thread ID:
00786891
Message ID:
00786894
Views:
18
This message has been marked as the solution to the initial question of the thread.
Hi Renoir,

The first query pulls all records from crspmplan cursor that mathche current record in crspmplanh cursor. The second query pulls all records from crspmplan cursor that have mathching records in crspmplanh cursor.

>The 1st SQL returns 1 record like I expected, but why does the 2nd SQL return all the records in the crsPMPlan table? I would have expected the results to be the same.
>
>
>SELECT ;
>	crsPMPlan.IDNum, ;
>	crsPMPlan.PlanID, ;
>	crsPMPlan.ContID, ;
>	crsPMPlan.UserID, ;
>	crsPMPlan.Pin ;
>	FROM crspmplan ;
>	WHERE ;
>		(crspmplan.IDNum == crspmplanh.IDNum) AND ;
>		(ALLTRIM(crspmplan.USERID) == ALLTRIM(crspmplanh.USERID)) AND ;
>		(ALLTRIM(crspmplan.Pin) == ALLTRIM(crspmplanh.Pin)) ;
>	GROUP BY ;
>		crsPMPlan.IDNum, ;
>		crsPMPlan.PlanID, ;
>		crsPMPlan.UserID, ;
>		crsPMPlan.Pin ;
>	INTO CURSOR tmpWork
>
>
>
>
>SELECT ;
>	crsPMPlan.IDNum, ;
>	crsPMPlan.PlanID, ;
>	crsPMPlan.ContID, ;
>	crsPMPlan.UserID, ;
>	crsPMPlan.Pin ;
>	FROM crspmplan ;
>	JOIN crsPMPlanH ON (crspmplan.IDNum == crspmplanh.IDNum) ;
>	WHERE ;
>		(ALLTRIM(crspmplan.USERID) == ALLTRIM(crspmplanh.USERID)) AND ;
>		(ALLTRIM(crspmplan.Pin) == ALLTRIM(crspmplanh.Pin)) ;
>	GROUP BY ;
>		crsPMPlan.IDNum, ;
>		crsPMPlan.PlanID, ;
>		crsPMPlan.UserID, ;
>		crsPMPlan.Pin ;
>	INTO CURSOR tmpWork
>
--sb--
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform