0001
0002
0003 CREATE TEMPORARY VIEW tab1 AS SELECT * FROM VALUES
0004 (0), (1), (2), (2), (2), (2), (3), (null), (null) AS tab1(c1);
0005 CREATE TEMPORARY VIEW tab2 AS SELECT * FROM VALUES
0006 (1), (2), (2), (3), (5), (5), (null) AS tab2(c1);
0007 CREATE TEMPORARY VIEW tab3 AS SELECT * FROM VALUES
0008 (1, 2),
0009 (1, 2),
0010 (1, 3),
0011 (2, 3),
0012 (2, 2)
0013 AS tab3(k, v);
0014 CREATE TEMPORARY VIEW tab4 AS SELECT * FROM VALUES
0015 (1, 2),
0016 (2, 3),
0017 (2, 2),
0018 (2, 2),
0019 (2, 20)
0020 AS tab4(k, v);
0021
0022
0023 SELECT udf(c1) FROM tab1
0024 EXCEPT ALL
0025 SELECT udf(c1) FROM tab2;
0026
0027
0028 SELECT udf(c1) FROM tab1
0029 MINUS ALL
0030 SELECT udf(c1) FROM tab2;
0031
0032
0033 SELECT udf(c1) FROM tab1
0034 EXCEPT ALL
0035 SELECT udf(c1) FROM tab2 WHERE udf(c1) IS NOT NULL;
0036
0037
0038 SELECT udf(c1) FROM tab1 WHERE udf(c1) > 5
0039 EXCEPT ALL
0040 SELECT udf(c1) FROM tab2;
0041
0042
0043 SELECT udf(c1) FROM tab1
0044 EXCEPT ALL
0045 SELECT udf(c1) FROM tab2 WHERE udf(c1 > udf(6));
0046
0047
0048 SELECT udf(c1) FROM tab1
0049 EXCEPT ALL
0050 SELECT CAST(udf(1) AS BIGINT);
0051
0052
0053 SELECT udf(c1) FROM tab1
0054 EXCEPT ALL
0055 SELECT array(1);
0056
0057
0058 SELECT udf(k), v FROM tab3
0059 EXCEPT ALL
0060 SELECT k, udf(v) FROM tab4;
0061
0062
0063 SELECT k, udf(v) FROM tab4
0064 EXCEPT ALL
0065 SELECT udf(k), v FROM tab3;
0066
0067
0068 SELECT udf(k), udf(v) FROM tab4
0069 EXCEPT ALL
0070 SELECT udf(k), udf(v) FROM tab3
0071 INTERSECT DISTINCT
0072 SELECT udf(k), udf(v) FROM tab4;
0073
0074
0075 SELECT udf(k), v FROM tab4
0076 EXCEPT ALL
0077 SELECT k, udf(v) FROM tab3
0078 EXCEPT DISTINCT
0079 SELECT udf(k), udf(v) FROM tab4;
0080
0081
0082 SELECT k, udf(v) FROM tab3
0083 EXCEPT ALL
0084 SELECT udf(k), udf(v) FROM tab4
0085 UNION ALL
0086 SELECT udf(k), v FROM tab3
0087 EXCEPT DISTINCT
0088 SELECT k, udf(v) FROM tab4;
0089
0090
0091 SELECT k FROM tab3
0092 EXCEPT ALL
0093 SELECT k, v FROM tab4;
0094
0095
0096 SELECT udf(k), udf(v) FROM tab3
0097 EXCEPT ALL
0098 SELECT udf(k), udf(v) FROM tab4
0099 UNION
0100 SELECT udf(k), udf(v) FROM tab3
0101 EXCEPT DISTINCT
0102 SELECT udf(k), udf(v) FROM tab4;
0103
0104
0105 SELECT udf(k), udf(v) FROM tab3
0106 MINUS ALL
0107 SELECT k, udf(v) FROM tab4
0108 UNION
0109 SELECT udf(k), udf(v) FROM tab3
0110 MINUS DISTINCT
0111 SELECT k, udf(v) FROM tab4;
0112
0113
0114 SELECT k, udf(v) FROM tab3
0115 EXCEPT ALL
0116 SELECT udf(k), v FROM tab4
0117 EXCEPT DISTINCT
0118 SELECT k, udf(v) FROM tab3
0119 EXCEPT DISTINCT
0120 SELECT udf(k), v FROM tab4;
0121
0122
0123
0124 SELECT *
0125 FROM (SELECT tab3.k,
0126 udf(tab4.v)
0127 FROM tab3
0128 JOIN tab4
0129 ON udf(tab3.k) = tab4.k)
0130 EXCEPT ALL
0131 SELECT *
0132 FROM (SELECT udf(tab3.k),
0133 tab4.v
0134 FROM tab3
0135 JOIN tab4
0136 ON tab3.k = udf(tab4.k));
0137
0138
0139 SELECT *
0140 FROM (SELECT udf(udf(tab3.k)),
0141 udf(tab4.v)
0142 FROM tab3
0143 JOIN tab4
0144 ON udf(udf(tab3.k)) = udf(tab4.k))
0145 EXCEPT ALL
0146 SELECT *
0147 FROM (SELECT udf(tab4.v) AS k,
0148 udf(udf(tab3.k)) AS v
0149 FROM tab3
0150 JOIN tab4
0151 ON udf(tab3.k) = udf(tab4.k));
0152
0153
0154 SELECT udf(v) FROM tab3 GROUP BY v
0155 EXCEPT ALL
0156 SELECT udf(k) FROM tab4 GROUP BY k;
0157
0158
0159 DROP VIEW IF EXISTS tab1;
0160 DROP VIEW IF EXISTS tab2;
0161 DROP VIEW IF EXISTS tab3;
0162 DROP VIEW IF EXISTS tab4;