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

    https://github.com/apache/spark/pull/16760#discussion_r98794624
  
    --- Diff: 
sql/core/src/test/resources/sql-tests/results/subquery/exists-subquery/exists-having.sql.out
 ---
    @@ -0,0 +1,153 @@
    +-- 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 dept_id, count(*) 
    +FROM   emp 
    +GROUP  BY dept_id 
    +HAVING EXISTS (SELECT 1 
    +               FROM   bonus 
    +               WHERE  bonus_amt < min(emp.salary))
    +-- !query 3 schema
    +struct<dept_id:int,count(1):bigint>
    +-- !query 3 output
    +10 3
    +100        2
    +20 1
    +30 1
    +70 1
    +NULL       1
    +
    +
    +-- !query 4
    +SELECT * 
    +FROM   dept 
    +WHERE  EXISTS (SELECT dept_id, 
    +                      Count(*) 
    +               FROM   emp 
    +               GROUP  BY dept_id 
    +               HAVING EXISTS (SELECT 1 
    +                              FROM   bonus 
    +                              WHERE bonus_amt < Min(emp.salary)))
    +-- !query 4 schema
    +struct<dept_id:int,dept_name:string,state:string>
    +-- !query 4 output
    +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
    +
    +
    +-- !query 5
    +SELECT dept_id, 
    +       Max(salary) 
    +FROM   emp gp 
    +WHERE  EXISTS (SELECT dept_id, 
    +                      Count(*) 
    +               FROM   emp p
    +               GROUP  BY dept_id 
    +               HAVING EXISTS (SELECT 1 
    +                              FROM   bonus 
    +                              WHERE  bonus_amt < Min(p.salary))) 
    +GROUP  BY gp.dept_id
    +-- !query 5 schema
    +struct<dept_id:int,max(salary):double>
    +-- !query 5 output
    +10 200.0
    +100        400.0
    +20 300.0
    +30 400.0
    +70 150.0
    +NULL       400.0
    +
    +
    +-- !query 6
    +SELECT * 
    +FROM   dept 
    +WHERE  EXISTS (SELECT dept_id, 
    +                        Count(*) 
    +                 FROM   emp 
    +                 GROUP  BY dept_id 
    +                 HAVING EXISTS (SELECT 1 
    +                                FROM   bonus 
    +                                WHERE  bonus_amt > Min(emp.salary)))
    +-- !query 6 schema
    +struct<dept_id:int,dept_name:string,state:string>
    +-- !query 6 output
    +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
    +
    +
    +-- !query 7
    +SELECT * 
    +FROM   dept 
    +WHERE  EXISTS (SELECT dept_id, 
    +                      count(emp.dept_id)
    +               FROM   emp 
    +               WHERE  dept.dept_id = dept_id 
    +               GROUP  BY dept_id 
    +               HAVING EXISTS (SELECT 1 
    +                              FROM   bonus 
    +                              WHERE  ( bonus_amt > min(emp.salary) 
    +                                       AND count(emp.dept_id) > 1 )))
    +-- !query 7 schema
    +struct<dept_id:int,dept_name:string,state:string>
    +-- !query 7 output
    +10 dept 1  CA
    --- End diff --
    
    I have compared the result set matched with the result from DB2.


---
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