sql >> Databasteknik >  >> RDS >> Mysql

Kontrollsumma av SELECT-resultat i MySQL

Problemet är att CONCAT och SUM är inte kompatibla i detta format.

CONCAT är utformad för att köras en gång per rad i din resultatuppsättning på argumenten som definieras av den raden.

SUM är en aggregerad funktion, designad för att köras på en fullständig resultatuppsättning.

CRC32 är av samma klass av funktioner som CONCAT .

Så, du har funktioner kapslade på ett sätt som bara inte spelar bra ihop.

Du kan prova:

SELECT CONCAT(
    (SELECT sum(crc32(column_one)) FROM database.table),
    (SELECT sum(crc32(column_two)) FROM database.table)
);

eller

SELECT sum(crc32(column_one)), sum(crc32(column_two))
FROM database.table;

och sammanfoga dem med ditt klientspråk.




  1. Oracle 11g - FOR-slinga som bara infogas vardagar i en tabell?

  2. korrekt sätt att starta/stoppa postgres databas pg_ctl eller tjänst postgres

  3. mysql uppdateringsfråga med underfråga

  4. SQL Server Slumpvis sortering