('gt3', 6, 'pk_6_data')
]
- w_else = select([case([
- [info_table.c.pk < 3,
- 3],
- [and_(info_table.c.pk >= 3, info_table.c.pk < 6),
- 6]],
- else_ = 0).label('x'),
- info_table.c.pk, info_table.c.info],
- from_obj=[info_table])
+ w_else = select(
+ [
+ case(
+ [
+ [info_table.c.pk < 3, cast(3, Integer)],
+ [
+ and_(
+ info_table.c.pk >= 3, info_table.c.pk < 6),
+ 6]],
+ else_ = 0).label('x'),
+ info_table.c.pk, info_table.c.info],
+ from_obj=[info_table])
else_result = w_else.execute().fetchall()
from sqlalchemy import testing
from sqlalchemy.testing import engines
from sqlalchemy import MetaData, Integer, String, ForeignKey, Boolean, exc,\
- Sequence, func, literal, Unicode
+ Sequence, func, literal, Unicode, cast
from sqlalchemy.types import TypeDecorator, TypeEngine
from sqlalchemy.testing.schema import Table, Column
from sqlalchemy.dialects import sqlite
self._run_test(server_default='1', autoincrement=False)
def test_clause(self):
- stmt = select([literal("INT_1", type_=self.MyInteger)]).as_scalar()
+ stmt = select([cast("INT_1", type_=self.MyInteger)]).as_scalar()
self._run_test(default=stmt)
@testing.requires.returning
return "INT_%d" % value
eq_(
- testing.db.scalar(select([literal("INT_5", type_=MyInteger)])),
+ testing.db.scalar(select([cast("INT_5", type_=MyInteger)])),
"INT_5"
)
eq_(
- testing.db.scalar(select([literal("INT_5", type_=MyInteger).label('foo')])),
+ testing.db.scalar(select([cast("INT_5", type_=MyInteger).label('foo')])),
"INT_5"
)