I have a cell that contains a very long string. If I use this query:
SELECT dettPDE FROM bollaOutDett WHERE idDoc>0 GROUP BY idDoc;
I have no problem, but in some cases I need to use this:
SELECT GROUP_CONCAT(DISTINCT IF(dettPDE='',NULL, dettPDE) SEPARATOR '|') AS dettPDESch
FROM bollaOutDett
WHERE idDoc>0
GROUP BY idDoc;
and in this case dettPDESch not return correctly.
Here the test code:
DROP TABLE IF EXISTS bollaOutDett;
CREATE TABLE bollaOutDett (idDoc int, dettPDE longtext);
INSERT INTO bollaOutDett (idDoc, dettPDE)
VALUES
(1, '[{"tab":"PArticoli","id":"3","codProdotto":"2SA1264N","qta":"1","artSer":"1","seriale":"H1","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"H2","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"H3","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"H4","artLot":"0","lotto":""},{"tab":"PArticoli","id":"3","codProdotto":"2SA1264N","qta":"1","artSer":"1","seriale":"J1","artLot":"0","lotto":""}]'),
(2, ''),
(3, '[{"tab":"PArticoli","id":"3","codProdotto":"2SA1264N","qta":"1","artSer":"1","seriale":"H1","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"H2","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"H3","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"H4","artLot":"0","lotto":""},{"tab":"PArticoli","id":"3","codProdotto":"2SA1264N","qta":"1","artSer":"1","seriale":"J1","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"J2","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"J3","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"J4","artLot":"0","lotto":""},{"tab":"PArticoli","id":"3","codProdotto":"2SA1264N","qta":"1","artSer":"1","seriale":"K1","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"K2","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"K3","artLot":"0","lotto":""},{"tab":"PArticoli","id":"879","codProdotto":"2SA1267","qta":"1","artSer":"1","seriale":"K4","artLot":"0","lotto":""}]'),
(4, '');
SELECT GROUP_CONCAT(DISTINCT IF(dettPDE='',NULL, dettPDE) SEPARATOR '|') AS dettPDESch
FROM bollaOutDett
WHERE idDoc>0
GROUP BY idDoc;
SELECT dettPDE
FROM bollaOutDett
WHERE idDoc>0
GROUP BY idDoc
Any suggestion?
Original link to code: here