PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Bagaimana cara melakukan kueri PostgreSQL dengan klausa where-in yang berisi banyak kolom secara terprogram?

Akhirnya, saya menemukan unnest fungsi dapat membantu.

SQL murni seperti itu:

select * from plat_customs_complex
where (code_t,code_s) = ANY(select * from unnest(ARRAY['01013090','01029010'],ARRAY['10','90']))

Dapat mengubahnya menjadi kode C# dengan mudah:

string[] codeTs = new string[]{"01013090","01029010"}; 
string[] codeSs = new string[]{"10", "90"};
connection.Query("select * from plat_customs_complex
where (code_t,code_s) = ANY(select * from unnest(@CodeTs, @CodeSs))", 
new {CodeTs=codeTs, CodeSs=codeSs});



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. fungsi yang berbeda () (tidak memilih kualifikasi) di postgres

  2. Kesalahan saat menjalankan migrasi di Heroku, PostgreSQL dengan Rails 5

  3. Mengekspor kueri PostgreSQL ke file csv menggunakan Python

  4. Bagaimana cara membuat database dengan susunan UTF-8 di PostgreSQL di Windows?

  5. Transpose baris dan kolom (alias pivot) hanya dengan minimum COUNT()?