sql >> Databáze >  >> RDS >> PostgreSQL

přístup k aliasům sloupců v klauzuli where v postgresql

Zde je návod, jak jste to udělali - alias v názvu sloupce

select 
  -- etc etc 
  (select innerDLI.datetime_created from distribution_line_items innerDLI where innerDLI.item_number = distribution_line_items.item_number order by innerDLI.datetime_created asc limit 1) as Origination,
  -- etc etc
from distribution_stop_information
  -- etc etc

Zde je návod, jak jej můžete vložit do aliasu where, v join

select 
  -- etc etc 
  Origination.datetime_created
  -- etc etc
from distribution_stop_information 
left join distribution_line_items AS Origination ON Origination.item_number = distribution_line_items.item_number
where Origination.datetime_created > to_date(?, 'YYYY-MM-DD') - interval '180 days'  
-- etc etc

Na tom není nic lepší než řešení, které jste zveřejnili (optimalizátor sql by měl vést ke stejnému plánu), ale je to "použití aliasu v klauzuli where"



  1. Jak LAST_DAY() funguje v MariaDB

  2. Oracle REGEXP_LIKE a hranice slov

  3. PostgreSQL funkce pro poslední vložené ID

  4. Jak odstranit úvodní a koncové mezery v MySQL