<HTML><BODY><br>Раз уж тут пошла такая пьянка... Давайте сделаем ORM для PostgreSQL с поддержкой асинхронности и возможностью прямого SQL запроса и конвертирования результатов в спец типы.<br><br>Идея основана на том, что EXPLAIN VERBOSE всегда расскажет какие поля и откуда взяты (даже в случае с WITH), вот допустим:<br><br> EXPLAIN VERBOSE WITH foo AS (SELECT * FROM test) SELECT * FROM foo;<br> QUERY PLAN<br>-----------------------------------------------------------------------------<br> CTE Scan on foo (cost=21.60..44.80 rows=1160 width=40)<br> Output: foo.id, foo.data<br> CTE foo<br> -> Seq Scan on pg_temp_111.test (cost=0.00..21.60 rows=1160 width=40)<br> Output: test.id, test.data<br><br>Смысл в том, что на каждый raw запрос (с кешированием, понятно) запрашивать EXPLAIN этого запроса и по результатам строить аксессоры. Или не строить ))<br><br></BODY></HTML>