select columnD, columnA, columnB, columnC from table;
would get your data in the order requested.
You have to not think of a database as a spreadsheet however - think of it more like a big bag of hollow numbered balls. Inside each ball is little marbles.
The number is the record ID, the ball is all the data pertaining to that record ID and the marbles are the individual bits of info.
position and order matter not to a database. Its al in how you pull the data OUT that matters.