Skip to content

Commit a92c3cb

Browse files
authored
fix(scalar-subquery): ensure that scalar subqueries value is resolvable with no underlying projection (#11125)
1 parent 35fc38b commit a92c3cb

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

ibis/backends/tests/test_dot_sql.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -343,3 +343,9 @@ def test_unnamed_columns(con):
343343

344344
assert types[0].is_string()
345345
assert types[1].is_integer()
346+
347+
348+
def test_scalar_dot_sql(con):
349+
sql = sg.select(sge.convert(1).as_("a")).sql(con.dialect)
350+
expr = con.sql(sql).as_scalar()
351+
assert expr.type().is_numeric()

ibis/expr/operations/subqueries.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,12 @@ def __init__(self, rel):
4848

4949
@attribute
5050
def value(self):
51-
(value,) = self.rel.values.values()
51+
rel = self.rel
52+
53+
if values := rel.values:
54+
(value,) = values.values()
55+
else:
56+
(value,) = rel.fields.values()
5257
return value
5358

5459
@attribute

0 commit comments

Comments
 (0)