waitingkuo commented on issue #2867:
URL: 
https://github.com/apache/arrow-datafusion/issues/2867#issuecomment-1179784547

   i tried it on sqlparser-rs, it doesn't work
   
   ``` rust
   use sqlparser::dialect::GenericDialect;
   use sqlparser::parser::Parser;
   
   fn main() {
   
       let dialect = GenericDialect {}; // or AnsiDialect
   
       let sql = "SELECT __t404.__c394, __t404.__c395, __t404.__c396, 
__t404.__c397
                   FROM ((
                       (SELECT test1.c0 AS __c394, test1.c1 AS __c395, test1.c2 
AS __c396, test1.c3 AS __c397
                           FROM (test1)) __t398
                       INNER JOIN
                       (SELECT test1.c0 AS __c399, test1.c1 AS __c400, test1.c2 
AS __c401, test1.c3 AS __c402
                           FROM (test1)) __t403
                       ON __t398.__c395 = __t403.__c401) __t404)
                   WHERE __t404.__c395 != __t404.__c396; ";
   
   
   
       let ast = Parser::parse_sql(&dialect, sql).unwrap();
   
       println!("AST: {:?}", ast);
   } 
   ```
   
   ``` bash
   ➜  sp git:(master) ✗ cargo run
      Compiling sp v0.1.0 (/Users/willy/willy/df-workspace/sp)
       Finished dev [unoptimized + debuginfo] target(s) in 0.30s
        Running `target/debug/sp`
   thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: 
ParserError("Expected ), found: __t404")', src/main.rs:26:48
   note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
   ```
   
    
   
   looks like the outer alias doesn't work. the following sql works
   ``` SQL
   ❯ SELECT __c394, __c395, __c396, __c397 
   FROM ((
       (SELECT test1.c0 AS __c394, test1.c1 AS __c395, test1.c2 AS __c396, 
test1.c3 AS __c397
           FROM (test1)) __t398
       INNER JOIN
       (SELECT test1.c0 AS __c399, test1.c1 AS __c400, test1.c2 AS __c401, 
test1.c3 AS __c402
           FROM (test1)) __t403
       ON __t398.__c395 = __t403.__c401) )
   WHERE __c395 != __c396;
   0 rows in set. Query took 0.004 seconds.
   ```
   
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to