Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Jumlah Ekspresi Pembuat Kasus di QueryDSL

Ekspresi kelas dasar tidak memungkinkan Anda untuk menerapkan agregasi. Jika Anda perhatikan, klausa Anda yang lain sebenarnya mengembalikan NumberExpression. Yang perlu Anda lakukan adalah menggunakan tipe itu alih-alih Ekspresi. Jadi kode Anda bisa menjadi:

NumberExpression<Integer> sourceCases = qTable.source.
        when(matchedValue1).then(new Integer(1)).
        otherwise(new Integer(0));

NumberExpression<Integer> newAccountCases = qTable.isNew.
        when(matchedValue2).then(new Integer(1)).
        otherwise(new Integer(0));

return queryDslJdbcTemplate.queryForObject(sqlQuery,
        new Mapping(qTable.filed1,
                    qTable.filed2,
                    qTable.id.count(),
                    sourceCases.sum(),
                    newAccountCases.sum());



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mengetahui jika permintaan UPDATE MySQL gagal karena informasi yang diberikan cocok dengan data yang sudah ada di database?

  2. Pernyataan SQL mengabaikan parameter where

  3. Cara menggunakan pertandingan melawan di mysql

  4. mysql5.58 unstart server di mac os 10.6.5

  5. MySQL INSERT berfungsi dengan baik seperti yang didokumentasikan