Sorry... made a typo there... the desired syntax is: `SELECT * FROM table WHERE (table.a, table.b) IN (VALUES (?, ?), (?,?))`
On Thursday, 27 June 2019 14:11:16 UTC-4, Steven James wrote: > > Currently, `selectin` loading with composite keys works for me on MySQL > and SQLite. The documentation states that it also works with Postgres. I'm > currently trying to get it working on DB2 (connecting to a DB2 for i, 7.2 > system. > > (the following assumes a table with the primary key consisting of two > columns: a and b) > > selectin loading currently emits: > `SELECT * FROM table WHERE (table.a, table.b) IN ((?, ?), (?, ?))` > > For this type of loading to work in DB2 (DB2 for i), the syntax needs to > be: > `SELECT * FROM table WHERE (table.a, table.b) IN VALUES (?, ?), (?,?)` > > Is there any way to implement this without a core change? I'm wondering if > I can override the normal operation of in_() using a custom dialect or > custom default comparator. > > Thanks, > Steven James > > -- SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper http://www.sqlalchemy.org/ To post example code, please provide an MCVE: Minimal, Complete, and Verifiable Example. See http://stackoverflow.com/help/mcve for a full description. --- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sqlalchemy+unsubscr...@googlegroups.com. To post to this group, send email to sqlalchemy@googlegroups.com. Visit this group at https://groups.google.com/group/sqlalchemy. To view this discussion on the web visit https://groups.google.com/d/msgid/sqlalchemy/f318eb7e-82dc-4429-80e9-390406706eee%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.