Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Why are these SQL statements different?
Message
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Miscellaneous
Thread ID:
00362213
Message ID:
00362279
Views:
17
Hi Douglas,

In the second SQL you don't use ==, which gives you partial string compare, if SET EXACT OFF & SET ANSI OFF.

Another observation:
you're using STR() without second parameter, which is possibly dangerous also. Use str(yourfield, fsize(yourfield)) instead, e.g. if your field is Numeric 4, use str(yourfield,4). Also, if it's an Integer field, you can use BINTOC() function instead for saving index file size.

>All,
>
>To me these two statements appear the same:
>
>SELECT authorization_tracking.PATID, ;
>authorization_tracking.units_remaining, ;
>authorization_tracking.authorization_effective_date, ;
>authorization_tracking.authorization_expiration_date, ;
>authorization_tracking.payer_code, authorization_tracking.facility, ;
>services_for_authorization.service_code ;
>FROM authorization_tracking ;
>JOIN services_for_authorization ON ;
>STR (authorization_tracking.facility) + ;
>authorization_tracking.patid + authorization_tracking.aut_link== ;
>STR(services_for_authorization.facility) + ;
>services_for_authorization.patid + ;
>services_for_authorization.aut_link ;
>where authorization_expiration_date >={^1999-09-01} AND ;
>authorization_status_value <> PADR('Denied',30) AND ;
>authorization_tracking.facility=GCOUNTY AND ISNULL(void_code) ;
>ORDER BY authorization_tracking.PATID ;
>INTO CURSOR authtemp
>
>-- Lists 5525 records
>
>SELECT authorization_tracking.PATID, ;
>authorization_tracking.units_remaining, ;
>authorization_tracking.authorization_effective_date, ;
>authorization_tracking.authorization_expiration_date, ;
>authorization_tracking.payer_code, authorization_tracking.facility, ;
>services_for_authorization.service_code ;
>FROM authorization_tracking ;
>JOIN services_for_authorization ON ;
>authorization_tracking.facility=services_for_authorization.facility ;
>and authorization_tracking.patid=services_for_authorization.patid ;
>and ;
>authorization_tracking.aut_link=services_for_authorization.aut_link ;
>WHERE authorization_expiration_date >={^1999-09-01} AND ;
>authorization_status_value <> PADR('Denied',30) AND ;
>authorization_tracking.facility=GCOUNTY AND ISNULL(void_code) ;
>ORDER BY authorization_tracking.PATID ;
>INTO CURSOR authtemp
>
>-- List 28333 Records
>
>What am I missing.
>
>TIA,
>Doug
If it's not broken, fix it until it is.


My Blog
Previous
Reply
Map
View

Click here to load this message in the networking platform