Wcześniej powiedziałem, że nie da się tego zrobić, ale się myliłem. Skończyło się na tym, że sam potrzebowałem czegoś takiego, więc rozejrzałem się i odkryłem, że wyciągi przygotowane po stronie serwera pozwala budować i wykonywać dowolne instrukcje SQL z łańcuchów.
Oto przykład, który właśnie zrobiłem, aby udowodnić tę koncepcję:
set @query := (
select concat(
"select",
group_concat(concat("\n 1 as ", column_name) separator ','),
"\nfrom dual")
from information_schema.columns
where table_name = 'columns')
;
prepare s1 from @query
;
execute s1
;
deallocate prepare s1
;