Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-22984

Throw an error when arguments to window functions are window functions

    XMLWordPrintable

    Details

      Description

      CREATE TABLE t1(a INT, b INT);
      INSERT INTO t1 VALUES (1,1), (2,2), (3,3);
      

      MariaDB [test]> SELECT NTILE(MAX(a) OVER (PARTITION BY a)) OVER (PARTITION BY a ORDER BY b) FROM t1;
      ERROR 4074 (HY000): Window functions can not be used as arguments to group functions.
      

      MariaDB [test]> SELECT FIRST_VALUE(MAX(a) OVER (PARTITION BY a)) OVER (ORDER BY a) AS x FROM t1 GROUP BY a;
      

      This query just crashes.
      We should ensure that for FIRST_VALUE window function, we don't allow a window function in its arguments.

        Attachments

          Activity

            People

            Assignee:
            varun Varun Gupta
            Reporter:
            varun Varun Gupta
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: