Github user nsyca commented on a diff in the pull request:

    https://github.com/apache/spark/pull/16710#discussion_r98048551
  
    --- Diff: 
sql/core/src/test/resources/sql-tests/results/subquery/exists-subquery/exists-within-and-or.sql.out
 ---
    @@ -0,0 +1,156 @@
    +-- Automatically generated by SQLQueryTestSuite
    +-- Number of queries: 8
    +
    +
    +-- !query 0
    +CREATE TEMPORARY VIEW EMP AS SELECT * FROM VALUES
    +  (100, "emp 1", date "2005-01-01", 100.00D, 10),
    +  (100, "emp 1", date "2005-01-01", 100.00D, 10),
    +  (200, "emp 2", date "2003-01-01", 200.00D, 10),
    +  (300, "emp 3", date "2002-01-01", 300.00D, 20),
    +  (400, "emp 4", date "2005-01-01", 400.00D, 30),
    +  (500, "emp 5", date "2001-01-01", 400.00D, NULL),
    +  (600, "emp 6 - no dept", date "2001-01-01", 400.00D, 100),
    +  (700, "emp 7", date "2010-01-01", 400.00D, 100),
    +  (800, "emp 8", date "2016-01-01", 150.00D, 70)
    +AS EMP(id, emp_name, hiredate, salary, dept_id)
    +-- !query 0 schema
    +struct<>
    +-- !query 0 output
    +
    +
    +
    +-- !query 1
    +CREATE TEMPORARY VIEW DEPT AS SELECT * FROM VALUES
    +  (10, "dept 1", "CA"),
    +  (20, "dept 2", "NY"),
    +  (30, "dept 3", "TX"),
    +  (40, "dept 4 - unassigned", "OR"),
    +  (50, "dept 5 - unassigned", "NJ"),
    +  (70, "dept 7", "FL")
    +AS DEPT(dept_id, dept_name, state)
    +-- !query 1 schema
    +struct<>
    +-- !query 1 output
    +
    +
    +
    +-- !query 2
    +CREATE TEMPORARY VIEW BONUS AS SELECT * FROM VALUES
    +  ("emp 1", 10.00D),
    +  ("emp 1", 20.00D),
    +  ("emp 2", 300.00D),
    +  ("emp 2", 100.00D),
    +  ("emp 3", 300.00D),
    +  ("emp 4", 100.00D),
    +  ("emp 5", 1000.00D),
    +  ("emp 6 - no dept", 500.00D)
    +AS BONUS(emp_name, bonus_amt)
    +-- !query 2 schema
    +struct<>
    +-- !query 2 output
    +
    +
    +
    +-- !query 3
    +SELECT emp.emp_name 
    +FROM   emp 
    +WHERE  EXISTS (SELECT dept.state 
    +               FROM   dept 
    +               WHERE  emp.dept_id = dept.dept_id) 
    +        OR emp.id > 200
    +-- !query 3 schema
    +struct<emp_name:string>
    +-- !query 3 output
    +emp 1
    +emp 1
    +emp 2
    +emp 3
    +emp 4
    +emp 5
    +emp 6 - no dept
    +emp 7
    +emp 8
    +
    +
    +-- !query 4
    +SELECT * 
    +FROM   emp 
    +WHERE  EXISTS (SELECT dept.dept_name 
    +               FROM   dept 
    +               WHERE  emp.dept_id = dept.dept_id) 
    +        OR emp.dept_id IS NULL
    +-- !query 4 schema
    +struct<id:int,emp_name:string,hiredate:date,salary:double,dept_id:int>
    +-- !query 4 output
    +100        emp 1   2005-01-01      100.0   10
    +100        emp 1   2005-01-01      100.0   10
    +200        emp 2   2003-01-01      200.0   10
    +300        emp 3   2002-01-01      300.0   20
    +400        emp 4   2005-01-01      400.0   30
    +500        emp 5   2001-01-01      400.0   NULL
    +800        emp 8   2016-01-01      150.0   70
    +
    +
    +-- !query 5
    +SELECT emp.emp_name 
    +FROM   emp 
    +WHERE  EXISTS (SELECT dept.state 
    +               FROM   dept 
    +               WHERE  emp.dept_id = dept.dept_id 
    +                      AND dept.dept_id = 20) 
    +        OR EXISTS (SELECT dept.state 
    +                   FROM   dept 
    +                   WHERE  emp.dept_id = dept.dept_id 
    +                          AND dept.dept_id = 30)
    +-- !query 5 schema
    +struct<emp_name:string>
    +-- !query 5 output
    +emp 3
    +emp 4
    +
    +
    +-- !query 6
    +SELECT * 
    +FROM   bonus 
    +WHERE  ( NOT EXISTS (SELECT * 
    +                     FROM   emp 
    +                     WHERE  emp.emp_name = emp_name 
    +                            AND bonus_amt > emp.salary) 
    +          OR EXISTS (SELECT * 
    +                     FROM   emp 
    +                     WHERE  emp.emp_name = emp_name 
    +                             OR bonus_amt < emp.salary) )
    +-- !query 6 schema
    +struct<emp_name:string,bonus_amt:double>
    +-- !query 6 output
    +emp 1      10.0
    +emp 1      20.0
    +emp 2      100.0
    +emp 2      300.0
    +emp 3      300.0
    +emp 4      100.0
    +emp 5      1000.0
    +emp 6 - no dept    500.0
    +
    +
    +-- !query 7
    +SELECT * FROM bonus WHERE NOT EXISTS 
    +( 
    +       SELECT * 
    +       FROM   emp 
    +       WHERE  emp.emp_name = emp_name 
    +       AND    bonus_amt > emp.salary) 
    +AND 
    +emp_name IN 
    +( 
    +       SELECT emp_name 
    +       FROM   emp 
    +       WHERE  bonus_amt < emp.salary)
    +-- !query 7 schema
    +struct<emp_name:string,bonus_amt:double>
    +-- !query 7 output
    +emp 1      10.0
    +emp 1      20.0
    +emp 2      100.0
    +emp 4      100.0
    --- End diff --
    
    I have compared this result file with the attached DB2 output. The two sets 
of result are equivalent.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to