Hi,

I have trouble forming the below SQL statement using SQLAlchemy orm:

select *
from (
    select
         c.id class_id,
         sum(decode(e.enrollment_status_id, 2, 1,null,0,0)) total,
         c.enrollment_limit enrollment_limit
    from classes c, enrollment e
    where c.id = e.class_id(+)
    group by c.id, c.enrollment_limit
)
where enrollment_limit <= total

I know that center portion should be a subquery of sorts, but I don't
know how to convert the decode into valid SQLalchemy ORM syntax.

I tried using SQL Expressions and this was what I got:

        connection = tkengine.connect()
        s = text("""\
            select c.id class_id, sum(decode(e.enrollment_status_id,
2, 1,null,0,0)) total, c.enrollment_limit enrollment_limit
            from classes c, enrollment e
            where c.id = e.class_id(+)
            group by c.id, c.enrollment_limit
        """)
       stmt = connection.execute(s)

I would like to then use this subquery to obtain a list of classes
that have enrollment_limit greater than (>) total.

Thanks.

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.

Reply via email to