SELECT COUNT(DISTINCT A))
FROM T1
WHERE A3 > 0
HAVING AVG(DISTINCT A4) >1;
SELECT EMPNO, FIRSTNME, LASTNAME
FROM DSN8A10.EMP
ORDER BY HIREDATE;
SELECT *
FROM (SELECT * FROM T1
UNION ALL
(SELECT * FROM T2 ORDER BY 1)
) AS UTABLE
ORDER BY ORDER OF UTABLE;
SELECT JOB, MAX(SALARY), MIN(SALARY)
FROM DSN8A10.EMP
GROUP BY JOB
HAVING COUNT(*) > 1 AND MAX(SALARY) > 50000;
SELECT COUNT(DISTINCT A)) FROM T1 WHERE A3 > 0 HAVING AVG(DISTINCT A4) >1;
SELECT PART, SUPPLIER, PARTS.PROD#, PRODUCT
FROM PARTS INNER JOIN PRODUCTS
ON PARTS.PROD# = PRODUCTS.PROD#
AND SUPPLIER NOT LIKE 'A%';
SELECT EMPNO, ACTNO, CHAR(EMSTDATE,USA), CHAR(EMENDATE,USA)
FROM DSN8A10.EMPPROJACT
WHERE EMPNO IN (SELECT EMPNO FROM DSN8A10.EMP
WHERE WORKDEPT = 'E11');
SELECT PART, SUPPLIER, PARTS.PROD#, PRODUCT
FROM PARTS INNER JOIN PRODUCTS
ON PARTS.PROD# = PRODUCTS.PROD#;
SELECT PART, SUPPLIER, PARTS.PROD#, PRODUCT
FROM PARTS FULL OUTER JOIN PRODUCTS
ON PARTS.PROD# = PRODUCTS.PROD#;
(SELECT * FROM T1 ORDER BY C1)
UNION
(SELECT * FROM T2 ORDER BY C2);
SELECT *
FROM (SELECT * FROM T1
UNION ALL
(SELECT * FROM T2 ORDER BY 1)
) AS UTABLE
ORDER BY ORDER OF UTABLE;
SELECT WORKDEPT, MAX(SALARY)
FROM DSN8A10.EMP Q
GROUP BY WORKDEPT
HAVING MAX(SALARY) < (SELECT AVG(SALARY)
FROM DSN8A10.EMP
WHERE NOT WORKDEPT = Q.WORKDEPT);
SELECT WORKDEPT, MAX(SALARY)
FROM DSN8A10.EMP
GROUP BY WORKDEPT
HAVING MAX(SALARY) < (SELECT AVG(SALARY)
FROM DSN8A10.EMP);
SELECT HIREYEAR, AVG(SALARY)
FROM (SELECT YEAR(HIREDATE) AS HIREYEAR, SALARY
FROM DSN8A10.EMP) AS NEWEMP
GROUP BY HIREYEAR;
On Apr 19, 2018, at 3:33 PM, Fred Eisele <fredric...@gmail.com> wrote:The question came up about representing various SQL queries.I would like to discuss how the following examples would be implemented in AQL.Each topic should probably be done under separate threads.As they are completed I will put them in https://github.com/CategoricalData/fql/tree/master/resources/examples/aqlExamples drawn from :distinctSELECT COUNT(DISTINCT A)) FROM T1 WHERE A3 > 0 HAVING AVG(DISTINCT A4) >1;
andSELECT * FROM Customers
WHERE Country='Germany' AND City='Berlin’;
orSELECT * FROM Customers
WHERE City='Berlin' OR City='München’;
notSELECT * FROM Customers
WHERE NOT Country = 'Germany’;
order bySELECT EMPNO, FIRSTNME, LASTNAME FROM DSN8A10.EMP ORDER BY HIREDATE;
SELECT * FROM (SELECT * FROM T1 UNION ALL (SELECT * FROM T2 ORDER BY 1) ) AS UTABLE ORDER BY ORDER OF UTABLE;
min/maxSELECT JOB, MAX(SALARY), MIN(SALARY) FROM DSN8A10.EMP GROUP BY JOB HAVING COUNT(*) > 1 AND MAX(SALARY) > 50000;
count/avg/sumSELECT COUNT(DISTINCT A)) FROM T1 WHERE A3 > 0 HAVING AVG(DISTINCT A4) >1;
like/wildcardSELECT PART, SUPPLIER, PARTS.PROD#, PRODUCT FROM PARTS INNER JOIN PRODUCTS ON PARTS.PROD# = PRODUCTS.PROD# AND SUPPLIER NOT LIKE 'A%';
inSELECT EMPNO, ACTNO, CHAR(EMSTDATE,USA), CHAR(EMENDATE,USA) FROM DSN8A10.EMPPROJACT WHERE EMPNO IN (SELECT EMPNO FROM DSN8A10.EMP WHERE WORKDEPT = 'E11');
betweeninner joinSELECT PART, SUPPLIER, PARTS.PROD#, PRODUCT FROM PARTS INNER JOIN PRODUCTS ON PARTS.PROD# = PRODUCTS.PROD#;
outer join [right and left]SELECT PART, SUPPLIER, PARTS.PROD#, PRODUCT FROM PARTS FULL OUTER JOIN PRODUCTS ON PARTS.PROD# = PRODUCTS.PROD#;
self joinSELECT column_name(s)
FROM table1 T1, table1 T2
WHERE condition;
union(SELECT * FROM T1 ORDER BY C1) UNION (SELECT * FROM T2 ORDER BY C2);
SELECT * FROM (SELECT * FROM T1 UNION ALL (SELECT * FROM T2 ORDER BY 1) ) AS UTABLE ORDER BY ORDER OF UTABLE;
group bySELECT WORKDEPT, MAX(SALARY) FROM DSN8A10.EMP Q GROUP BY WORKDEPT HAVING MAX(SALARY) < (SELECT AVG(SALARY) FROM DSN8A10.EMP WHERE NOT WORKDEPT = Q.WORKDEPT);
havingSELECT WORKDEPT, MAX(SALARY) FROM DSN8A10.EMP GROUP BY WORKDEPT HAVING MAX(SALARY) < (SELECT AVG(SALARY) FROM DSN8A10.EMP);
existsSELECT column_name(s)
FROM table_name
WHERE EXISTS
(SELECT column_name FROM table_name WHERE condition);any/allsubselect from [derived table/column]SELECT HIREYEAR, AVG(SALARY) FROM (SELECT YEAR(HIREDATE) AS HIREYEAR, SALARY FROM DSN8A10.EMP) AS NEWEMP GROUP BY HIREYEAR;
--
You received this message because you are subscribed to the Google Groups "categoricaldata" group.
To unsubscribe from this group and stop receiving emails from it, send an email to categoricalda...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.