title: How to pass tuples (not array) as WHERE constraint parameters in SQL query via client library (Postgres)?
body: <p>I have empirically discovered that PostgreSQL lets you create 'tuples' (terminology mine, I don't know what they call it) to define a multi-column condition in WHERE:</p>
  
  <pre><code>update T set x=true where (a_id, b_id) IN ((3428, 3544), (3450, 3542));
  </code></pre>
  
  <p>This seems to do exactly what I hope it would do: <code>x</code> is updated where a_id = first item in tuple AND b_id = second item in tuple. This is close to being useful, but for it to really matter, I have to be able to set these 'tuples' as parameters from a client library; in particular, <code>node-pg</code> in this case.</p>
  
  <p>Is it possible to bind $1 to something in the following query , such that $1 is a list of 0 or more pairs of <code>a_id</code> and <code>b_id</code>?</p>
  
  <pre><code>client.query("UPDATE t SET x=true WHERE (a_id, b_id) IN $1"), [...?])
  </code></pre>
  
  <p>If not, can I at least do</p>
  
  <pre><code>client.query("UPDATE t SET x=true WHERE (a_id, b_id) IN ($1, $2, ...$N)", [ a1b1, a1b2, ...aNbN ])
  </code></pre>
  
  <p>?</p>