PostgreSQL equivalent for MySQL GROUP_CONCAT example

Trabla: got MySQL sql query in php script, need PostgreSQL version

SELECT group_concat(
       
        CASE
            WHEN id = :phonemeid
                THEN concat('<u>',grapheme,'</u>')
            ELSE grapheme
        END
                    
        SEPARATOR '' )  AS phoneme
                           
FROM tbl_phoneme
WHERE wordid = :wordid
ORDER BY listindex ASC


Solving:

SELECT array_to_string(
            array(

                    SELECT
                            CASE
                                WHEN id = :phonemeid
                                    THEN '<u>' || grapheme || '</u>'
                                ELSE grapheme
                            END

                    FROM my_phoneme
                    WHERE wordid = :wordid
                    ORDER BY listindex ASC

            ), ''
        ) AS phoneme




No comments:

Post a Comment