Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
How to limit LEFT JOIN to one record only?
Message
 
General information
Forum:
Visual FoxPro
Category:
Other
Environment versions
Visual FoxPro:
VFP 9 SP1
Miscellaneous
Thread ID:
01534771
Message ID:
01534790
Views:
49
>>>>>Hi,
>>>>>
>>>>>I am trying to limit LEFT JOIN to select only one record. By design the child table should have only one record but I ran into a case where user had two records (wrong but it happens). And when two records are selected the entire resulting query is wrong. So, for example, say I have the following query:
>>>>>
>>>>>
>>>>>select .... from Table1 left join Table2 on Table1.pk_field = Table2.pk_field
>>>>>
>>>>>
>>>>>How can I change (if possible) the ON expression so that if Table2 has more than one record that matches the Table1.pk_field, only one is selected? (It does not matter to me which one). TIA.
>>>>
>>>>SELECT TOP 1 ... ORDER BY Table1.pk_field
>>>
>>>I cannot change the SELECT part of my query (if understand your suggestion correctly). That is, the SELECT part (before FROM) involves many fields. Unless you mean that SELECT TOP 1 can be part of the LEFT JOIN expression.
>>>Thank you.
>>
>>Why can't you change 'SELECT' to 'SELECT TOP 1' ?
>
>As I mentioned to Naomi, I was showing the case simplified. The resulting query can have more than one record (there is another LEFT JOIN that I didn't mention). But if this LEFT JOIN that I mentioned pulls not 1 but 2 records, then the resulting query has double the number of records. You see what I mean?

That's not what you originally asked
--sb--
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform