Ho la seguente query

SELECT
DISTINCT CASE 1 WHEN (tab.pri!='')&&(tab.dit='') THEN 'pri' WHEN (tab.pri='')&&(tab.dit!='') THEN 'dit' ELSE 'errore' END AS pridit,
CASE 1 WHEN (tab.val1!='')&&(tab.val2='') THEN tab.potenza WHEN (tab.val1='')&&(tab.val2!='') THEN 0 WHEN (tab.val1!='')&&(tab.val2!='') THEN tab.potenza ELSE 'errore' END AS CAMPOINTERESSATO,
potenza
FROM tab ORDER BY pridit DESC, CAMPOINTERESSATO ASC
mi restituisce tre valori

pridit
CAMPOINTERESSATO
potenza

vorrei che mi ordinasse CAMPOINTERESSATO NUMERICAMENTE e non ALFABETICAMENTE.

ES. CORRETTO

pri-1
pri-3
pri-10
pri-17
dit-5
dit-11

ES. ATTUALE E NON VOLUTO

pri-1
pri-10
pri-17
pri-3
dit-11
dit-5