Hi Lukas,

thank you for your answer (and sorry for taking so long to come back to 
this).

On Wednesday, May 9, 2018 at 11:38:30 AM UTC+2, Lukas Eder wrote:
>
> I don't see the value of additional API at this point. The logic you 
> mentioned is still reasonable but either the example was incomplete, or 
> there is a subtle bug. An alternative would be to take all columns, put 
> them in a list, and call contains on it:
>
You are right; the example is wrong. In my use case, I have in fact a table 
with constant values of different types that is referenced from other 
tables, sometimes multiple times (for different types). The problem occurs 
when there are more than two references, but the select statement does not 
include the join for one of them. Then, the code above raise the warning, 
as the remaining two are seen as possible candidates.


Arrays.asList(record.fields()).contains(B.B_ID) 
>
>
> This will definitely work around any potential ambiguity issues and focus 
> only on calling equals() on each field in the record. 
>
This indeed works nicely. It is also quite readable; although it's probably 
not the best option performance-wise. It would still be more readable and 
would provide for an optimized implementation if there was:

record.containsFields(B.B_ID)

-- 
You received this message because you are subscribed to the Google Groups "jOOQ 
User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jooq-user+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to