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

Bagaimana saya bisa memilih bidang teks terpanjang saat menggunakan GROUP BY di mysql, a la MAX()?

Anda perlu menggunakan CHAR_LENGTH bukannya LENGTH

SELECT a.id, a.post_id, a.body
FROM posts a INNER JOIN
(
    SELECT post_ID, title, MAX(CHAR_LENGTH(body)) totalLength
    FROM posts
    GROUP BY post_ID, title
) b ON a.post_id = b.post_ID AND
        a.title = b.title AND
        CHAR_LENGTH(a.body) = b.totalLength

Anda mungkin ingin melihat perbedaannya:CHAR_LENGTH() vs PANJANG ( )

Demo SQLFiddle



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hibernasi tidak menghasilkan kaskade

  2. Cara memilih semua tabel dengan nama kolom dan memperbarui kolom itu

  3. Bidang desimal MySQL dikembalikan sebagai string dalam PHP

  4. Fungsi PHP hanya berfungsi sekali

  5. Mengekspor hasil kueri di MySQL Workbench melebihi 1000 catatan