я имел в виду что у самих табличек через orm, нет
relationship('A', foreign_keys=[a_id], primaryjoin='A.id == B.currency_id'), вместо этого есть только поле Integer, в котором записана id.
удобно валидировать данные как дефолтное значение - Значение может прийти null с какого-то поля, и вместо того, чтобы его показывать, используется coalesce, чтобы показать пустую стрингу
Может coalesce оказывать влияние на производительность? Сделано оно для этого, чтобы удобно валидировать данные как дефолтное значение. Фильтр по сути с главной таблицы идет, от которой join идет. По структуре есть все эти поля. У них нет relationship, только id. Меня интересует ли использование orm relationship как ForeignKey, даст больше производительность?
Запрос:
'SELECT coalesce(A.id, :coalesce_1) AS card_id, coalesce(A.serial_number, :coalesce_2) AS card_number, coalesce(B.name, :coalesce_3) AS prj_name, coalesce(C.name, :coalesce_4) AS client_name, coalesce(A.user_name, :coalesce_5) AS card_owner_name, coalesce(A.user_phone_number, :coalesce_6) AS card_owner_phone_number, coalesce(A.balance_current, :coalesce_7) AS current_balance, coalesce(A.balance_bonus, :coalesce_8) AS bonus_balance, coalesce(A.active, :coalesce_9) AS card_status, coalesce(D.name, :coalesce_10) AS tariff_plan_name, NULL AS anon_1 \nFROM cashless_card JOIN company ON cashless_card.company_id = company.id JOIN voc ON cashless_card.voc_id = voc.id LEFT OUTER JOIN tariff_plan ON cashless_card.tariff_plan = tariff_plan.id WHERE cashless_card.company_id IN (__[POSTCOMPILE_company_id_1])'
задумка такая?