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

GROUP_CONCAT kesalahan pernyataan mysql

Jika Anda melihat kode Anda (dan memperbesar):

SET @sql = CONCAT('SELECT id_c, students,', @sql, '
        [..]
                CONCAT(B.`code`, '_', A.id_a) col,
                CONCAT(D.value_m, ',', D.value_n) val
        [..]
        GROUP BY id_c'
    );

Anda akan melihat _ dan , berwarna hitam, sedangkan seharusnya berwarna merah sebagai bagian dari tali. Itu berarti string Anda "rusak" di sana. Jadi, Anda harus menghindari tanda kutip tunggal dengan '' :

SET @sql = CONCAT('SELECT id_c, students,', @sql, '
        [..]
                CONCAT(B.`code`, ''_'', A.id_a) col,
                CONCAT(D.value_m, '','', D.value_n) val
        [..]
        GROUP BY id_c'
    );

Atau gunakan tanda kutip ganda untuk string yang berisi tanda kutip tunggal:

SET @sql = CONCAT('SELECT id_c, students,', @sql, "
        [..]
                CONCAT(B.`code`, '_', A.id_a) col,
                CONCAT(D.value_m, ',', D.value_n) val
        [..]
        GROUP BY id_c"
    );

Sekarang string lengkapnya berwarna merah sebagaimana mestinya :-)

http://rextester.com/SLMU41976




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Persimpangan MySQL berdasarkan bidang tunggal

  2. Bagaimana saya bisa mengubah nama pengguna root di MySQL

  3. Bagaimana cara menyusun ulang kolom di MySQL Query Editor?

  4. Menggabungkan baris sebagai array dari tabel lain untuk setiap baris

  5. Kesalahan Pengkodean dalam File XML yang Dihasilkan PHP