예제 #1
0
def test_select_count(engine):
    statement = s.Select(
        c.Select(f.Count(n.star)),
        c.From(e.Identifier('person')),
        c.GroupBy(e.Identifier('age')),
    )
    assert statement.__sql__(engine) == Sql('''
        SELECT COUNT(*) FROM "person" GROUP BY "age"
    '''.strip())
예제 #2
0
def test_count_as(engine):
    sql = m.As(
        f.Count(e.Identifier('person', 'name')),
        e.Identifier('name_count'),
    )
    assert sql.__sql__(engine) == Sql('COUNT("person"."name") AS "name_count"')
예제 #3
0
def test_count(engine):
    sql = f.Count()
    assert sql.__sql__(engine) == Sql('COUNT()'), sql
예제 #4
0
def test_count_expression(engine):
    sql = f.Count(e.Equal(e.Identifier('name'), 'Mosky'))
    assert sql.__sql__(engine) == Sql('''COUNT("name" = 'Mosky')'''), sql
예제 #5
0
def test_count_identifier(engine):
    sql = f.Count(e.Identifier('name'))
    assert sql.__sql__(engine) == Sql('COUNT("name")'), sql
예제 #6
0
def test_count_value(engine):
    sql = f.Count('Mosky')
    assert sql.__sql__(engine) == Sql("COUNT('Mosky')"), sql
예제 #7
0
def test_count_star(engine):
    sql = f.Count(n.star)
    assert sql.__sql__(engine) == Sql('COUNT(*)'), sql
예제 #8
0
def test_select_function(engine):
    sql = c.Select(f.Count())
    assert sql.__sql__(engine) == Sql('SELECT COUNT()')