Using 9.5, this query:

SELECT o.id,
   a.number AS awb
  FROM pt.orders o
    LEFT JOIN (
                SELECT DISTINCT ON ((string_agg(air_way_bills.number::text, 
','::text)))
                  string_agg(air_way_bills.number::text, ','::text) AS number,
           air_way_bills.order_id
          FROM pt.air_way_bills
         GROUP BY air_way_bills.order_id) a ON a.order_id = o.id
gives me null for awb. Removing the DISTINCT ON clause:

SELECT o.id,
   a.number AS awb
  FROM pt.orders o
    LEFT JOIN (
                SELECT string_agg(air_way_bills.number::text, ','::text) AS 
number,
           air_way_bills.order_id
          FROM pt.air_way_bills
         GROUP BY air_way_bills.order_id) a ON a.order_id = o.id
where o.id = 2792;
gives me an awb. I'm confused about how this can be.

Reply via email to