Rješavati loš design sa SELECT DISTINCT je nešto najgluplje što možeš napraviti.
SELECT DISTINCT ima svojih koristi. Ovo nije jedna od njih.
Ako je tablica Posao šifarnik tj. katalog poslova, onda je riješenje sa još jednom tablicom.
Nju nazoveš StavkeNaloga. Tako se to radi. Točka.
Jedno pitanje: Kako ćeš u ovom slučaju handleati promjenu cijene? Ispravno bi bilo dodati novu stavku u tablicu Posao jer bi inače promjenom stavke izmijenio sve povezane naloge. Drugo riješenje je da u tablicu StavkeNaloga dodaš cijenu a tu kolonu izbaciš iz tablice Posao.
Ako Posao nije šifarnik već se u nju dodaje linija svaki puta kada se neki posao obavi tj. kada se radi novi nalog, onda treba obrnuti uloge. Nalog je master tablica, Posao detail i u nju dodaš kolonu SifraNaloga a iz Naloga izbacis SifraPosla.