Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Very Complex SQL - My Brain Hurts
Message
 
 
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Environment versions
Visual FoxPro:
VFP 7 SP1
OS:
Windows XP SP2
Database:
Visual FoxPro
Miscellaneous
Thread ID:
01133780
Message ID:
01134174
Views:
23
You can join resulting cursor from my select with Op-class on Operator and Class and pull multiplier.

>
>Sorry, I've been busy on other stuff today. Thanks for the SQL.
>
>How to pull "multiplier" from the the Op-class? Well the class code is given to the operators by the ETM manufacturer, in hex form, and is programmed into the ETM. Now one operator may use code XXX to mean "half-day cheap return" whereas another may use it for "county youth card", for instance. Hence, a code isn't unique but can only be compounded with the op # to give an unique key. So it's a matter of:
>
>from the ETMDATA rec, getting the class# and op#
>Using this to find the approp. class on the Op-Class table and thus the multiplier
>
>SO how could the getting of that be slotted into your SQL ? :-)
>
>(PS Have I told you I love you today? :-)
>
>>Hi Terry
>>
>>I still don't understand how to pull "multiplier" from the the Op-class table because of multiple records per op# and class#. Anyway, below is a basic query that should get you started. You can calculate totals/%'s in the report itself using the group footers/Report variables.
>>SELECT Operator, Route, Class, ;
>>	SUM(IIF(BETWEEN(etmdate, ldStart1, ldEnd1), Notickets, 0000000000)) AS Passengers1, ;
>>	SUM(IIF(BETWEEN(etmdate, ldStart2, ldEnd2), Notickets, 0000000000)) AS Passengers2 ;
>>FROM ETMData ;
>>WHERE etmdate BETWEEN ldStart1 and ldEnd1 OR etmdate BETWEEN ldStart2 and ldEnd2 ;
>>GROUP BY Operator, Route, Class
>>
>>
--sb--
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform