MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / test_union_cte_aliases

Method test_union_cte_aliases

test/sql/test_cte.py:797–848  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

795 )
796
797 def test_union_cte_aliases(self):
798 orders = table("orders", column("region"), column("amount"))
799
800 regional_sales = (
801 select(orders.c.region, orders.c.amount)
802 .cte("regional_sales")
803 .alias("rs")
804 )
805
806 s = select(regional_sales.c.region).where(
807 regional_sales.c.amount > 500
808 )
809
810 self.assert_compile(
811 s,
812 "WITH regional_sales AS "
813 "(SELECT orders.region AS region, "
814 "orders.amount AS amount FROM orders) "
815 "SELECT rs.region "
816 "FROM regional_sales AS rs WHERE "
817 "rs.amount > :amount_1",
818 )
819
820 s = s.union_all(
821 select(regional_sales.c.region).where(
822 regional_sales.c.amount < 300
823 )
824 )
825 self.assert_compile(
826 s,
827 "WITH regional_sales AS "
828 "(SELECT orders.region AS region, "
829 "orders.amount AS amount FROM orders) "
830 "SELECT rs.region FROM regional_sales AS rs "
831 "WHERE rs.amount > :amount_1 "
832 "UNION ALL SELECT rs.region "
833 "FROM regional_sales AS rs WHERE "
834 "rs.amount < :amount_2",
835 )
836
837 cloned = cloned_traverse(s, {}, {})
838 self.assert_compile(
839 cloned,
840 "WITH regional_sales AS "
841 "(SELECT orders.region AS region, "
842 "orders.amount AS amount FROM orders) "
843 "SELECT rs.region FROM regional_sales AS rs "
844 "WHERE rs.amount > :amount_1 "
845 "UNION ALL SELECT rs.region "
846 "FROM regional_sales AS rs WHERE "
847 "rs.amount < :amount_2",
848 )
849
850 def test_cloned_alias(self):
851 entity = table(

Callers

nothing calls this directly

Calls 9

tableFunction · 0.90
columnFunction · 0.90
selectFunction · 0.90
cloned_traverseFunction · 0.90
assert_compileMethod · 0.80
aliasMethod · 0.45
cteMethod · 0.45
whereMethod · 0.45
union_allMethod · 0.45

Tested by

no test coverage detected