Да, вы управляете порядком столбцов по порядку, указанному в запросе. Оба этих запроса возвращают одинаковые строки, но столбцы расположены в другом порядке.
select first_column_name, second_column_name
from mytable;
select second_column_name, first_column_name
from mytable;
Если вы хотите, чтобы столбцы в базовой таблице были постоянно изменены, вы можете использовать представление.
create view mytable_reordered
select second_column_name, first_column_name
from mytable;
Если вы хотите сделать это изменение прозрачным для прикладных программ, сначала переименуйте таблицу, а затем создайте представление, присвоив ему старое имя таблицы. Наконец, вы бы перепрыгнули через все обручи, которые требуются вашим dbms, чтобы сделать это представление обновляемым. Я думаю, что в SQLite это означает написание кода для реализации некоторых INSTEAD OF
триггеров .