4paradigm / 4paradigm/OpenMLDB

Add SQL syntax support for passing tuple to 'where in' statement

Open
#3,689 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
1.7k
Forks
331
Avg merge
12d 12h
Merged PRs (30d)
1

Description

**Describe the feature you'd like**

Now we can execute the sql like this.

```
select * from t1 where (gender) in (("male"));
```

But fail for this sql.

```
select * from t1 where (name, gender) in (("tobe", "male"));
```

Here is the error message.

```
W0104 11:03:18.722047 1311167296 sql_cluster_router.cc:2651] Status: [101] create logic plan tree failed--Unsupport ASTExpression StructConstructorWithParens
Error: [101] create logic plan tree failed--Unsupport ASTExpression StructConstructorWithParens
```

Contributor guide

Open the contributing guide

Research direction

The error points to sql_cluster_router.cc and an unsupported ASTExpression StructConstructorWithParens. Look for the logic plan tree creation code and the AST handling for WHERE IN clauses. Understand how single-column tuples are parsed versus multi-column tuples. Testing involves writing SQL with tuple syntax against the database.

Written by the indexing model from the issue text.

Assessment

Tech stack
sql
Domain
databases
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
40/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.