1

以下に、ソート'ProgramName'に使用する順序付けのクエリがあります。lp.name一番上の値の後に が'Science - IN'続きますが、他の値より上であってはなり'Science - FL'ません'Science - FL'か? 何か特別なことをする必要がありますか?

SELECT 
    lp.name AS 'program_name'
FROM customer_order co
JOIN customer c on co.customer_id = c.id
JOIN license_program lp ON co.license_program_id = lp.id
ORDER BY 
    CASE lower(sort_direction) WHEN 'asc' THEN
        CASE lower(sort_order)
            WHEN 'programname' THEN lower(lp.name)
            ELSE (entry_date)
        END
    END ASC,
    CASE lower(sort_direction) WHEN 'desc' THEN
        CASE lower(sort_order)
            WHEN 'programname' THEN lower(lp.name)
            ELSE (entry_date)
        END
    END DESC
LIMIT start_page, page_size;
4

1 に答える 1