Ho, I don't pass an array of datasets, just an array of values. Didn't realize your ds1 / ds2 were datasets! So, don't know if it works, so don't know the perf implications, sorry :)
Le mer. 17 juin 2020 à 14:09, Aryk Grosz <[email protected]> a écrit : > Crazy, I didn't know you could pass an array of datasets. Never saw that > before. > > What are the performance implications of doing it the way you are showing > vs using UNION? Is it approx the same? > > > On Wednesday, June 17, 2020 at 2:23:03 PM UTC+3, Michael Monerau wrote: >> >> Is there a design reason why you're avoiding something like: >> >> ids = [] >> ids.push(ds1) if x >> ids.push(ds2) if z >> ids.push(ds2) if y >> >> ds.exclude(id: ids) >> >> Maybe the code around your snippet prevents that. Looking at why may give >> a clue at a simple refactor? >> >> Best, >> Michael >> >> >> >> Le mer. 17 juin 2020 à 13:11, Aryk Grosz <[email protected]> a écrit : >> >>> I was thinking to UNION ALL all the datasets with the pks, and then on >>> the last UNION don't use "ALL" so that they get uniqued before being fed >>> into the main query. >>> >>> >>> On Wednesday, June 17, 2020 at 1:37:05 PM UTC+3, Aryk Grosz wrote: >>>> >>>> Many times I find myself writing. >>>> >>>> ds = ds.exclude(id: ds1) if x >>>> ds = ds.exclude(id: ds2) if z >>>> ds = ds.exclude(id: ds2) if y >>>> >>>> Is there any material performance impact of separating out the column >>>> loopups? >>>> >>>> Should I be "UNION"ing the list of ids of first and then just do one >>>> exclude/where statement? My guess is it doesn't really matter ultimately >>>> because it's a direct lookup on an indexed field even if it's called >>>> multiple times. >>>> >>>> Aryk >>>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "sequel-talk" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/sequel-talk/879e53a7-543d-4548-a293-21bb57fc3234o%40googlegroups.com >>> <https://groups.google.com/d/msgid/sequel-talk/879e53a7-543d-4548-a293-21bb57fc3234o%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- > You received this message because you are subscribed to the Google Groups > "sequel-talk" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sequel-talk/d6248ec8-d4b8-4a6e-ab8e-70059d67f2dao%40googlegroups.com > <https://groups.google.com/d/msgid/sequel-talk/d6248ec8-d4b8-4a6e-ab8e-70059d67f2dao%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "sequel-talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/sequel-talk/CAAkfp_TC6rA24-6HFAxXLUon8rpDcWjT0gWQO5%3DC-a%3Dbgt8GNQ%40mail.gmail.com.
