diff --git a/.github/workflows/cron-job-unit-tests.yml b/.github/workflows/cron-job-unit-tests.yml index 1b44bd5a424c..cb9f1117baba 100644 --- a/.github/workflows/cron-job-unit-tests.yml +++ b/.github/workflows/cron-job-unit-tests.yml @@ -29,7 +29,7 @@ jobs: strategy: fail-fast: false matrix: - jdk: [ '11', '21' ] + jdk: [ '11', '21.0.4' ] Dtest: [ "A*,F*,S*", "B*,D*,L*,T*", "C*,O*", "E*,N*,Q*", "G*,R*,U*", "H*,I*,J*", "K*,P*,V*,W*,X*,Y*,Z*", "M*"] uses: ./.github/workflows/worker.yml with: @@ -45,7 +45,7 @@ jobs: strategy: fail-fast: false matrix: - jdk: [ '11', '21' ] + jdk: [ '11', '21.0.4' ] steps: - name: Download reports for all unit test jobs uses: actions/download-artifact@v4 @@ -72,7 +72,7 @@ jobs: strategy: fail-fast: false matrix: - jdk: [ '11', '21' ] + jdk: [ '11', '21.0.4' ] with: script: .github/scripts/create-jacoco-coverage-report.sh artifacts_to_download: "unit-test-reports-${{ matrix.jdk }}-*" diff --git a/.github/workflows/static-checks.yml b/.github/workflows/static-checks.yml index 5f9fd7b4d608..6a149a46a6d3 100644 --- a/.github/workflows/static-checks.yml +++ b/.github/workflows/static-checks.yml @@ -41,7 +41,8 @@ jobs: strategy: fail-fast: false matrix: - java: [ '11', '17', '21' ] + # Use JDK 21.0.4 to work around https://github.com/apache/druid/issues/17429 + java: [ '11', '17', '21.0.4' ] runs-on: ubuntu-latest steps: - name: checkout branch diff --git a/.github/workflows/unit-and-integration-tests-unified.yml b/.github/workflows/unit-and-integration-tests-unified.yml index 1a5fdddff631..e15bdaa278ec 100644 --- a/.github/workflows/unit-and-integration-tests-unified.yml +++ b/.github/workflows/unit-and-integration-tests-unified.yml @@ -79,7 +79,8 @@ jobs: strategy: fail-fast: false matrix: - jdk: [ '11', '17', '21' ] + # Use JDK 21.0.4 to work around https://github.com/apache/druid/issues/17429 + jdk: [ '11', '17', '21.0.4' ] runs-on: ubuntu-latest steps: - name: Checkout branch @@ -208,12 +209,12 @@ jobs: standard-its: needs: [build, unit-tests-unapproved, check-approval] - if: ${{ always() && (needs.check-approval.outputs.approved == 'true' || needs.unit-tests-unapproved.result == 'success') }} + if: ${{ !cancelled() && (needs.check-approval.outputs.approved == 'true' || needs.unit-tests-unapproved.result == 'success') }} uses: ./.github/workflows/standard-its.yml revised-its: needs: [build, unit-tests-unapproved, check-approval] - if: ${{ always() && (needs.check-approval.outputs.approved == 'true' || needs.unit-tests-unapproved.result == 'success') }} + if: ${{ !cancelled() && (needs.check-approval.outputs.approved == 'true' || needs.unit-tests-unapproved.result == 'success') }} uses: ./.github/workflows/revised-its.yml with: BACKWARD_COMPATIBILITY_IT_ENABLED: ${{ needs.set-env-var.outputs.BACKWARD_COMPATIBILITY_IT_ENABLED }} @@ -224,6 +225,6 @@ jobs: actions-timeline: needs: [build, unit-tests-approved, unit-tests-unapproved, revised-its, standard-its] runs-on: ubuntu-latest - if: ${{ always() }} + if: ${{ !cancelled() }} steps: - uses: Kesin11/actions-timeline@427ee2cf860166e404d0d69b4f2b24012bb7af4f diff --git a/dev/intellij-setup.md b/dev/intellij-setup.md index c08375a33472..108ec25c430b 100644 --- a/dev/intellij-setup.md +++ b/dev/intellij-setup.md @@ -74,7 +74,7 @@ Intellij IDEA debugger can attach to a local or remote Java process (Druid proce Follow these steps to debug a Druid process using the IntelliJ IDEA debugger. 1. Enable debugging in the Druid process 1. For Druid services (such as Overlord, Coordinator, etc), include the following as JVM config `-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=` where `` is any available port. Note that different port values should be chosen for each Druid service. - 2. For the peons (workers on Middlemanager), include the following `agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=0` in runtime properties `druid.indexer.runner.javaOpts` of the Middle Manager. Note that `address=0` will tell the debugger to assign ephemeral port. + 2. For the peons (workers on Middlemanager), add the string `"-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=0"` to the runtime property `druid.indexer.runner.javaOptsArray` of the Middle Manager. Note that `address=0` will tell the debugger to assign an ephemeral port. 2. Find the port assigned to the Druid process. 1. For Druid services, the port value is what you chose in the JVM argument of step 1i above. The port value can also be found in the first line of each Druid service log. 2. For the peons (workers on Middlemanager), you can find the assigned ephemeral port by checking the first line of the task log. diff --git a/docs/api-reference/automatic-compaction-api.md b/docs/api-reference/automatic-compaction-api.md index 3ad90c9d3391..c09183c09680 100644 --- a/docs/api-reference/automatic-compaction-api.md +++ b/docs/api-reference/automatic-compaction-api.md @@ -258,6 +258,102 @@ Host: http://ROUTER_IP:ROUTER_PORT A successful request returns an HTTP `200 OK` message code and an empty response body. +### Update cluster-level compaction config + +Updates cluster-level configuration for compaction tasks which applies to all datasources, unless explicitly overridden in the datasource compaction config. +This includes the following fields: + +|Config|Description|Default value| +|------|-----------|-------------| +|`compactionTaskSlotRatio`|Ratio of number of slots taken up by compaction tasks to the number of total task slots across all workers.|0.1| +|`maxCompactionTaskSlots`|Maximum number of task slots that can be taken up by compaction tasks and sub-tasks. Minimum number of task slots available for compaction is 1. When using MSQ engine or Native engine with range partitioning, a single compaction job occupies more than one task slot. In this case, the minimum is 2 so that at least one compaction job can always run in the cluster.|2147483647 (i.e. total task slots)| +|`compactionPolicy`|Policy to choose intervals for compaction. Currently, the only supported policy is [Newest segment first](#compaction-policy-newestsegmentfirst).|Newest segment first| +|`useSupervisors`|Whether compaction should be run on Overlord using supervisors instead of Coordinator duties.|false| +|`engine`|Engine used for running compaction tasks, unless overridden in the datasource-level compaction config. Possible values are `native` and `msq`. `msq` engine can be used for compaction only if `useSupervisors` is `true`.|`native`| + +#### Compaction policy `newestSegmentFirst` + +|Field|Description|Default value| +|-----|-----------|-------------| +|`type`|This must always be `newestSegmentFirst`|| +|`priorityDatasource`|Datasource to prioritize for compaction. The intervals of this datasource are chosen for compaction before the intervals of any other datasource. Within this datasource, the intervals are prioritized based on the chosen compaction policy.|None| + + +#### URL + +`POST` `/druid/coordinator/v1/config/compaction/cluster` + +#### Responses + + + + + + +*Successfully updated compaction configuration* + + + + + +*Invalid `max` value* + + + + +--- + +#### Sample request + + + + + + +```shell +curl --request POST "http://ROUTER_IP:ROUTER_PORT/druid/coordinator/v1/config/compaction/cluster" \ +--header 'Content-Type: application/json' \ +--data '{ + "compactionTaskSlotRatio": 0.5, + "maxCompactionTaskSlots": 1500, + "compactionPolicy": { + "type": "newestSegmentFirst", + "priorityDatasource": "wikipedia" + }, + "useSupervisors": true, + "engine": "msq" +}' + +``` + + + + + +```HTTP +POST /druid/coordinator/v1/config/compaction/cluster HTTP/1.1 +Host: http://ROUTER_IP:ROUTER_PORT +Content-Type: application/json + +{ + "compactionTaskSlotRatio": 0.5, + "maxCompactionTaskSlots": 1500, + "compactionPolicy": { + "type": "newestSegmentFirst", + "priorityDatasource": "wikipedia" + }, + "useSupervisors": true, + "engine": "msq" +} +``` + + + + +#### Sample response + +A successful request returns an HTTP `200 OK` message code and an empty response body. + ## View automatic compaction configuration ### Get all automatic compaction configurations @@ -406,7 +502,7 @@ Host: http://ROUTER_IP:ROUTER_PORT ], "compactionTaskSlotRatio": 0.1, "maxCompactionTaskSlots": 2147483647, - "useAutoScaleSlots": false + } ``` @@ -593,7 +689,12 @@ Host: http://ROUTER_IP:ROUTER_PORT "globalConfig": { "compactionTaskSlotRatio": 0.1, "maxCompactionTaskSlots": 2147483647, - "useAutoScaleSlots": false + "compactionPolicy": { + "type": "newestSegmentFirst", + "priorityDatasource": "wikipedia" + }, + "useSupervisors": true, + "engine": "native" }, "compactionConfig": { "dataSource": "wikipedia_hour", @@ -624,7 +725,11 @@ Host: http://ROUTER_IP:ROUTER_PORT "globalConfig": { "compactionTaskSlotRatio": 0.1, "maxCompactionTaskSlots": 2147483647, - "useAutoScaleSlots": false + "compactionPolicy": { + "type": "newestSegmentFirst" + }, + "useSupervisors": false, + "engine": "native" }, "compactionConfig": { "dataSource": "wikipedia_hour", diff --git a/docs/data-management/automatic-compaction.md b/docs/data-management/automatic-compaction.md index 62e209317f81..7d16eae2618c 100644 --- a/docs/data-management/automatic-compaction.md +++ b/docs/data-management/automatic-compaction.md @@ -243,11 +243,12 @@ You can run automatic compaction using compaction supervisors on the Overlord ra * Tracked compaction task status to avoid re-compacting an interval repeatedly -To use compaction supervisors, set the following properties in your Overlord runtime properties: - * `druid.supervisor.compaction.enabled` to `true` so that compaction tasks can be run as supervisor tasks - * `druid.supervisor.compaction.engine` to `msq` to specify the MSQ task engine as the compaction engine or to `native` to use the native engine. This is the default engine if the `engine` field is omitted from your compaction config +To use compaction supervisors, update the [compaction dynamic config](../api-reference/automatic-compaction-api.md#update-cluster-level-compaction-config) and set: -Compaction supervisors use the same syntax as auto-compaction using Coordinator duties with one key difference: you submit the auto-compaction as a a supervisor spec. In the spec, set the `type` to `autocompact` and include the auto-compaction config in the `spec`. +* `useSupervisors` to `true` so that compaction tasks can be run as supervisor tasks +* `engine` to `msq` to use the MSQ task engine as the compaction engine or to `native` (default value) to use the native engine. + +Compaction supervisors use the same syntax as auto-compaction using Coordinator duties with one key difference: you submit the auto-compaction as a supervisor spec. In the spec, set the `type` to `autocompact` and include the auto-compaction config in the `spec`. To submit an automatic compaction task, you can submit a supervisor spec through the [web console](#manage-compaction-supervisors-with-the-web-console) or the [supervisor API](#manage-compaction-supervisors-with-supervisor-apis). diff --git a/docs/development/extensions-core/s3.md b/docs/development/extensions-core/s3.md index 2565451c2725..93c4c122f775 100644 --- a/docs/development/extensions-core/s3.md +++ b/docs/development/extensions-core/s3.md @@ -117,7 +117,7 @@ The AWS SDK requires that a target region be specified. You can set these by us For example, to set the region to 'us-east-1' through system properties: * Add `-Daws.region=us-east-1` to the `jvm.config` file for all Druid services. -* Add `-Daws.region=us-east-1` to `druid.indexer.runner.javaOpts` in [Middle Manager configuration](../../configuration/index.md#middle-manager-configuration) so that the property will be passed to Peon (worker) processes. +* Add `"-Daws.region=us-east-1"` to `druid.indexer.runner.javaOptsArray` in [Middle Manager configuration](../../configuration/index.md#middle-manager-configuration) so that the property will be passed to Peon (worker) processes. ### Connecting to S3 configuration diff --git a/extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/ShuffleSpecFactories.java b/extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/ShuffleSpecFactories.java index 8f5770378c55..24f6dfffe27a 100644 --- a/extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/ShuffleSpecFactories.java +++ b/extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/ShuffleSpecFactories.java @@ -19,6 +19,7 @@ package org.apache.druid.msq.querykit; +import org.apache.druid.frame.key.ClusterBy; import org.apache.druid.msq.kernel.GlobalSortMaxCountShuffleSpec; import org.apache.druid.msq.kernel.GlobalSortTargetSizeShuffleSpec; import org.apache.druid.msq.kernel.MixShuffleSpec; @@ -69,11 +70,21 @@ public static ShuffleSpecFactory globalSortWithMaxPartitionCount(final int parti } /** - * Factory that produces globally sorted partitions of a target size. + * Factory that produces globally sorted partitions of a target size, using the {@link ClusterBy} to partition + * rows across partitions. + * + * Produces {@link MixShuffleSpec}, ignoring the target size, if the provided {@link ClusterBy} is empty. */ public static ShuffleSpecFactory getGlobalSortWithTargetSize(int targetSize) { - return (clusterBy, aggregate) -> - new GlobalSortTargetSizeShuffleSpec(clusterBy, targetSize, aggregate); + return (clusterBy, aggregate) -> { + if (clusterBy.isEmpty()) { + // Cannot partition or sort meaningfully because there are no cluster-by keys. Generate a MixShuffleSpec + // so everything goes into a single partition. + return MixShuffleSpec.instance(); + } else { + return new GlobalSortTargetSizeShuffleSpec(clusterBy, targetSize, aggregate); + } + }; } } diff --git a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQInsertTest.java b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQInsertTest.java index 801faac44aff..6662f23d9b1c 100644 --- a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQInsertTest.java +++ b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQInsertTest.java @@ -1606,6 +1606,38 @@ public void testInsertOnFoo1WithLimit(String contextName, Map co .verifyResults(); } + @MethodSource("data") + @ParameterizedTest(name = "{index}:with context {0}") + public void testInsertOnFoo1NoDimensionsWithLimit(String contextName, Map context) + { + Map queryContext = ImmutableMap.builder() + .putAll(context) + .put(MultiStageQueryContext.CTX_ROWS_PER_SEGMENT, 2) + .build(); + + List expectedRows = ImmutableList.of(new Object[]{DateTimes.utc(0L).getMillis(), 5L}); + + RowSignature rowSignature = RowSignature.builder() + .addTimeColumn() + .add("cnt", ColumnType.LONG) + .build(); + + testIngestQuery() + .setSql("insert into foo1 select count(*) cnt from foo where dim1 != '' limit 4 partitioned by all") + .setExpectedDataSource("foo1") + .setQueryContext(queryContext) + .setExpectedRowSignature(rowSignature) + .setExpectedSegments(ImmutableSet.of(SegmentId.of("foo1", Intervals.ETERNITY, "test", 0))) + .setExpectedResultRows(expectedRows) + .setExpectedMSQSegmentReport( + new MSQSegmentReport( + NumberedShardSpec.class.getSimpleName(), + "Using NumberedShardSpec to generate segments since the query is inserting rows." + ) + ) + .verifyResults(); + } + @MethodSource("data") @ParameterizedTest(name = "{index}:with context {0}") public void testInsertOnRestricted(String contextName, Map context) diff --git a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/CalciteMSQTestsHelper.java b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/CalciteMSQTestsHelper.java index 6a94124e7682..58f5a7b30624 100644 --- a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/CalciteMSQTestsHelper.java +++ b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/CalciteMSQTestsHelper.java @@ -20,9 +20,6 @@ package org.apache.druid.msq.test; import com.fasterxml.jackson.databind.ObjectMapper; -import com.google.common.cache.CacheBuilder; -import com.google.common.cache.CacheLoader; -import com.google.common.cache.LoadingCache; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.inject.Binder; @@ -32,10 +29,6 @@ import com.google.inject.TypeLiteral; import org.apache.druid.collections.ReferenceCountingResourceHolder; import org.apache.druid.collections.ResourceHolder; -import org.apache.druid.data.input.ResourceInputSource; -import org.apache.druid.data.input.impl.DimensionsSpec; -import org.apache.druid.data.input.impl.LongDimensionSchema; -import org.apache.druid.data.input.impl.StringDimensionSchema; import org.apache.druid.discovery.NodeRole; import org.apache.druid.frame.processor.Bouncer; import org.apache.druid.guice.IndexingServiceTuningConfigModule; @@ -44,8 +37,6 @@ import org.apache.druid.guice.annotations.Self; import org.apache.druid.indexing.common.SegmentCacheManagerFactory; import org.apache.druid.initialization.DruidModule; -import org.apache.druid.java.util.common.ISE; -import org.apache.druid.java.util.common.StringUtils; import org.apache.druid.java.util.common.concurrent.Execs; import org.apache.druid.java.util.common.io.Closer; import org.apache.druid.msq.counters.ChannelCounters; @@ -56,67 +47,33 @@ import org.apache.druid.msq.querykit.DataSegmentProvider; import org.apache.druid.query.DruidProcessingConfig; import org.apache.druid.query.ForwardingQueryProcessingPool; -import org.apache.druid.query.NestedDataTestUtils; import org.apache.druid.query.QueryProcessingPool; -import org.apache.druid.query.aggregation.CountAggregatorFactory; -import org.apache.druid.query.aggregation.DoubleSumAggregatorFactory; -import org.apache.druid.query.aggregation.FloatSumAggregatorFactory; -import org.apache.druid.query.aggregation.LongSumAggregatorFactory; -import org.apache.druid.query.aggregation.hyperloglog.HyperUniquesAggregatorFactory; import org.apache.druid.query.groupby.GroupByQueryConfig; import org.apache.druid.query.groupby.GroupByQueryRunnerTest; import org.apache.druid.query.groupby.GroupingEngine; import org.apache.druid.query.groupby.TestGroupByBuffers; import org.apache.druid.segment.CompleteSegment; -import org.apache.druid.segment.CursorFactory; -import org.apache.druid.segment.IndexBuilder; -import org.apache.druid.segment.IndexSpec; -import org.apache.druid.segment.QueryableIndex; -import org.apache.druid.segment.QueryableIndexCursorFactory; -import org.apache.druid.segment.Segment; import org.apache.druid.segment.TestIndex; -import org.apache.druid.segment.incremental.IncrementalIndex; -import org.apache.druid.segment.incremental.IncrementalIndexSchema; import org.apache.druid.segment.loading.DataSegmentPusher; import org.apache.druid.segment.loading.LocalDataSegmentPusher; import org.apache.druid.segment.loading.LocalDataSegmentPusherConfig; import org.apache.druid.segment.loading.SegmentCacheManager; import org.apache.druid.segment.realtime.appenderator.AppenderatorsManager; -import org.apache.druid.segment.writeout.OffHeapMemorySegmentWriteOutMediumFactory; import org.apache.druid.server.SegmentManager; +import org.apache.druid.server.SpecificSegmentsQuerySegmentWalker; import org.apache.druid.server.coordination.DataSegmentAnnouncer; import org.apache.druid.server.coordination.NoopDataSegmentAnnouncer; -import org.apache.druid.sql.calcite.CalciteNestedDataQueryTest; import org.apache.druid.sql.calcite.TempDirProducer; -import org.apache.druid.sql.calcite.util.CalciteTests; -import org.apache.druid.sql.calcite.util.TestDataBuilder; -import org.apache.druid.timeline.DataSegment; import org.apache.druid.timeline.SegmentId; -import org.apache.druid.timeline.partition.LinearShardSpec; import org.easymock.EasyMock; -import org.joda.time.Interval; import org.mockito.Mockito; -import javax.annotation.Nullable; import java.io.File; import java.util.List; import java.util.Set; -import java.util.UUID; import java.util.function.Function; import java.util.function.Supplier; -import static org.apache.druid.sql.calcite.util.CalciteTests.ARRAYS_DATASOURCE; -import static org.apache.druid.sql.calcite.util.CalciteTests.DATASOURCE1; -import static org.apache.druid.sql.calcite.util.CalciteTests.DATASOURCE2; -import static org.apache.druid.sql.calcite.util.CalciteTests.DATASOURCE3; -import static org.apache.druid.sql.calcite.util.CalciteTests.DATASOURCE5; -import static org.apache.druid.sql.calcite.util.CalciteTests.WIKIPEDIA; -import static org.apache.druid.sql.calcite.util.TestDataBuilder.INDEX_SCHEMA_LOTS_O_COLUMNS; -import static org.apache.druid.sql.calcite.util.TestDataBuilder.INDEX_SCHEMA_NUMERIC_DIMS; -import static org.apache.druid.sql.calcite.util.TestDataBuilder.ROWS1; -import static org.apache.druid.sql.calcite.util.TestDataBuilder.ROWS1_WITH_NUMERIC_DIMS; -import static org.apache.druid.sql.calcite.util.TestDataBuilder.ROWS2; -import static org.apache.druid.sql.calcite.util.TestDataBuilder.ROWS_LOTS_OF_COLUMNS; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.doReturn; @@ -198,29 +155,23 @@ public DataSegmentProvider provideDataSegmentProvider(LocalDataSegmentProvider l } @LazySingleton - static class LocalDataSegmentProvider extends CacheLoader implements DataSegmentProvider + static class LocalDataSegmentProvider implements DataSegmentProvider { - private TempDirProducer tempDirProducer; - private LoadingCache cache; + private SpecificSegmentsQuerySegmentWalker walker; @Inject - public LocalDataSegmentProvider(TempDirProducer tempDirProducer) + public LocalDataSegmentProvider(SpecificSegmentsQuerySegmentWalker walker) { - this.tempDirProducer = tempDirProducer; - this.cache = CacheBuilder.newBuilder().build(this); + this.walker = walker; } @Override - public CompleteSegment load(SegmentId segmentId) throws Exception + public Supplier> fetchSegment( + SegmentId segmentId, + ChannelCounters channelCounters, + boolean isReindex) { - return getSupplierForSegment(tempDirProducer::newTempFolder, segmentId); - } - - @Override - public Supplier> fetchSegment(SegmentId segmentId, - ChannelCounters channelCounters, boolean isReindex) - { - CompleteSegment a = cache.getUnchecked(segmentId); + CompleteSegment a = walker.getSegment(segmentId); return () -> new ReferenceCountingResourceHolder<>(a, Closer.create()); } @@ -272,264 +223,4 @@ private static DataServerQueryHandlerFactory getTestDataServerQueryHandlerFactor doReturn(dataServerQueryHandler).when(mockFactory).createDataServerQueryHandler(anyString(), any(), any()); return mockFactory; } - - protected static CompleteSegment getSupplierForSegment( - Function tempFolderProducer, - SegmentId segmentId - ) - { - final QueryableIndex index; - switch (segmentId.getDataSource()) { - case WIKIPEDIA: - try { - final File directory = new File(tempFolderProducer.apply("tmpDir"), StringUtils.format("wikipedia-index-%s", UUID.randomUUID())); - final IncrementalIndex incrementalIndex = TestIndex.makeWikipediaIncrementalIndex(); - TestIndex.INDEX_MERGER.persist(incrementalIndex, directory, IndexSpec.DEFAULT, null); - index = TestIndex.INDEX_IO.loadIndex(directory); - } - catch (Exception e) { - throw new RuntimeException(e); - } - break; - case DATASOURCE1: - IncrementalIndexSchema foo1Schema = new IncrementalIndexSchema.Builder() - .withMetrics( - new CountAggregatorFactory("cnt"), - new FloatSumAggregatorFactory("m1", "m1"), - new DoubleSumAggregatorFactory("m2", "m2"), - new HyperUniquesAggregatorFactory("unique_dim1", "dim1") - ) - .withRollup(false) - .build(); - index = IndexBuilder - .create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema(foo1Schema) - .rows(ROWS1) - .buildMMappedIndex(); - break; - case DATASOURCE2: - final IncrementalIndexSchema indexSchemaDifferentDim3M1Types = new IncrementalIndexSchema.Builder() - .withDimensionsSpec( - new DimensionsSpec( - ImmutableList.of( - new StringDimensionSchema("dim1"), - new StringDimensionSchema("dim2"), - new LongDimensionSchema("dim3") - ) - ) - ) - .withMetrics( - new CountAggregatorFactory("cnt"), - new LongSumAggregatorFactory("m1", "m1"), - new DoubleSumAggregatorFactory("m2", "m2"), - new HyperUniquesAggregatorFactory("unique_dim1", "dim1") - ) - .withRollup(false) - .build(); - index = IndexBuilder - .create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema(indexSchemaDifferentDim3M1Types) - .rows(ROWS2) - .buildMMappedIndex(); - break; - case DATASOURCE3: - case CalciteTests.BROADCAST_DATASOURCE: - index = IndexBuilder - .create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema(INDEX_SCHEMA_NUMERIC_DIMS) - .rows(ROWS1_WITH_NUMERIC_DIMS) - .buildMMappedIndex(); - break; - case DATASOURCE5: - index = IndexBuilder - .create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema(INDEX_SCHEMA_LOTS_O_COLUMNS) - .rows(ROWS_LOTS_OF_COLUMNS) - .buildMMappedIndex(); - break; - case ARRAYS_DATASOURCE: - index = IndexBuilder.create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema( - new IncrementalIndexSchema.Builder() - .withTimestampSpec(NestedDataTestUtils.AUTO_SCHEMA.getTimestampSpec()) - .withDimensionsSpec(NestedDataTestUtils.AUTO_SCHEMA.getDimensionsSpec()) - .withMetrics( - new CountAggregatorFactory("cnt") - ) - .withRollup(false) - .build() - ) - .inputSource( - ResourceInputSource.of( - NestedDataTestUtils.class.getClassLoader(), - NestedDataTestUtils.ARRAY_TYPES_DATA_FILE - ) - ) - .inputFormat(TestDataBuilder.DEFAULT_JSON_INPUT_FORMAT) - .inputTmpDir(tempFolderProducer.apply("tmpDir")) - .buildMMappedIndex(); - break; - case CalciteNestedDataQueryTest.DATA_SOURCE: - case CalciteNestedDataQueryTest.DATA_SOURCE_MIXED: - if (segmentId.getPartitionNum() == 0) { - index = IndexBuilder.create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema( - new IncrementalIndexSchema.Builder() - .withMetrics( - new CountAggregatorFactory("cnt") - ) - .withDimensionsSpec(CalciteNestedDataQueryTest.ALL_JSON_COLUMNS.getDimensionsSpec()) - .withRollup(false) - .build() - ) - .rows(CalciteNestedDataQueryTest.ROWS) - .buildMMappedIndex(); - } else if (segmentId.getPartitionNum() == 1) { - index = IndexBuilder.create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema( - new IncrementalIndexSchema.Builder() - .withMetrics( - new CountAggregatorFactory("cnt") - ) - .withDimensionsSpec(CalciteNestedDataQueryTest.JSON_AND_SCALAR_MIX.getDimensionsSpec()) - .withRollup(false) - .build() - ) - .rows(CalciteNestedDataQueryTest.ROWS_MIX) - .buildMMappedIndex(); - } else { - throw new ISE("Cannot query segment %s in test runner", segmentId); - } - break; - case CalciteNestedDataQueryTest.DATA_SOURCE_MIXED_2: - if (segmentId.getPartitionNum() == 0) { - index = IndexBuilder.create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema( - new IncrementalIndexSchema.Builder() - .withMetrics( - new CountAggregatorFactory("cnt") - ) - .withDimensionsSpec(CalciteNestedDataQueryTest.JSON_AND_SCALAR_MIX.getDimensionsSpec()) - .withRollup(false) - .build() - ) - .rows(CalciteNestedDataQueryTest.ROWS_MIX) - .buildMMappedIndex(); - } else if (segmentId.getPartitionNum() == 1) { - index = IndexBuilder.create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema( - new IncrementalIndexSchema.Builder() - .withMetrics( - new CountAggregatorFactory("cnt") - ) - .withDimensionsSpec(CalciteNestedDataQueryTest.ALL_JSON_COLUMNS.getDimensionsSpec()) - .withRollup(false) - .build() - ) - .rows(CalciteNestedDataQueryTest.ROWS) - .buildMMappedIndex(); - } else { - throw new ISE("Cannot query segment %s in test runner", segmentId); - } - break; - case CalciteNestedDataQueryTest.DATA_SOURCE_ALL: - index = IndexBuilder.create() - .tmpDir(tempFolderProducer.apply("tmpDir")) - .segmentWriteOutMediumFactory(OffHeapMemorySegmentWriteOutMediumFactory.instance()) - .schema( - new IncrementalIndexSchema.Builder() - .withTimestampSpec(NestedDataTestUtils.AUTO_SCHEMA.getTimestampSpec()) - .withDimensionsSpec(NestedDataTestUtils.AUTO_SCHEMA.getDimensionsSpec()) - .withMetrics( - new CountAggregatorFactory("cnt") - ) - .withRollup(false) - .build() - ) - .inputSource( - ResourceInputSource.of( - NestedDataTestUtils.class.getClassLoader(), - NestedDataTestUtils.ALL_TYPES_TEST_DATA_FILE - ) - ) - .inputFormat(TestDataBuilder.DEFAULT_JSON_INPUT_FORMAT) - .inputTmpDir(tempFolderProducer.apply("tmpDir")) - .buildMMappedIndex(); - break; - case CalciteTests.WIKIPEDIA_FIRST_LAST: - index = TestDataBuilder.makeWikipediaIndexWithAggregation(tempFolderProducer.apply("tmpDir")); - break; - case CalciteTests.TBL_WITH_NULLS_PARQUET: - case CalciteTests.SML_TBL_PARQUET: - case CalciteTests.ALL_TYPES_UNIQ_PARQUET: - case CalciteTests.FEW_ROWS_ALL_DATA_PARQUET: - case CalciteTests.T_ALL_TYPE_PARQUET: - index = TestDataBuilder.getQueryableIndexForDrillDatasource(segmentId.getDataSource(), tempFolderProducer.apply("tmpDir")); - break; - case CalciteTests.BENCHMARK_DATASOURCE: - index = TestDataBuilder.getQueryableIndexForBenchmarkDatasource(); - break; - default: - throw new ISE("Cannot query segment %s in test runner", segmentId); - - } - Segment segment = new Segment() - { - @Override - public SegmentId getId() - { - return segmentId; - } - - @Override - public Interval getDataInterval() - { - return segmentId.getInterval(); - } - - @Nullable - @Override - public QueryableIndex asQueryableIndex() - { - return index; - } - - @Override - public CursorFactory asCursorFactory() - { - return new QueryableIndexCursorFactory(index); - } - - @Override - public void close() - { - } - }; - DataSegment dataSegment = DataSegment.builder() - .dataSource(segmentId.getDataSource()) - .interval(segmentId.getInterval()) - .version(segmentId.getVersion()) - .shardSpec(new LinearShardSpec(0)) - .size(0) - .build(); - return new CompleteSegment(dataSegment, segment); - } } diff --git a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestOverlordServiceClient.java b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestOverlordServiceClient.java index 903ff1544c3f..3a034f147bed 100644 --- a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestOverlordServiceClient.java +++ b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestOverlordServiceClient.java @@ -137,7 +137,7 @@ public ListenableFuture runTask(String taskId, Object taskObject) throw new ISE(e, "Unable to run"); } finally { - if (controller != null && queryListener != null) { + if (queryListener != null && queryListener.reportMap != null) { reports.put(controller.queryId(), queryListener.getReportMap()); } } diff --git a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerClient.java b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerClient.java index 9f482912f315..69741a9953cb 100644 --- a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerClient.java +++ b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerClient.java @@ -158,7 +158,6 @@ public void close() { if (closed.compareAndSet(false, true)) { inMemoryWorkers.forEach((k, v) -> v.stop()); - inMemoryWorkers.clear(); } } } diff --git a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/TestDartControllerContextFactoryImpl.java b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/TestDartControllerContextFactoryImpl.java index 89209f012529..9a9aed874259 100644 --- a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/TestDartControllerContextFactoryImpl.java +++ b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/TestDartControllerContextFactoryImpl.java @@ -125,6 +125,9 @@ protected Worker newWorker(String workerId) catch (Exception e) { throw new RuntimeException(e); } + finally { + inMemoryWorkers.remove(workerId); + } }); return worker; diff --git a/indexing-service/src/main/java/org/apache/druid/guice/SupervisorModule.java b/indexing-service/src/main/java/org/apache/druid/guice/SupervisorModule.java index 6f510dc562b5..73e8e06e8964 100644 --- a/indexing-service/src/main/java/org/apache/druid/guice/SupervisorModule.java +++ b/indexing-service/src/main/java/org/apache/druid/guice/SupervisorModule.java @@ -29,7 +29,6 @@ import org.apache.druid.indexing.overlord.supervisor.SupervisorStateManagerConfig; import org.apache.druid.indexing.scheduledbatch.ScheduledBatchSupervisorSpec; import org.apache.druid.initialization.DruidModule; -import org.apache.druid.server.coordinator.CompactionSupervisorConfig; import java.util.List; @@ -39,7 +38,6 @@ public class SupervisorModule implements DruidModule public void configure(Binder binder) { JsonConfigProvider.bind(binder, "druid.supervisor", SupervisorStateManagerConfig.class); - JsonConfigProvider.bind(binder, "druid.supervisor.compaction", CompactionSupervisorConfig.class); } @Override diff --git a/indexing-service/src/main/java/org/apache/druid/indexing/common/actions/LocalTaskActionClient.java b/indexing-service/src/main/java/org/apache/druid/indexing/common/actions/LocalTaskActionClient.java index 81ff137ed179..1d0059335ed1 100644 --- a/indexing-service/src/main/java/org/apache/druid/indexing/common/actions/LocalTaskActionClient.java +++ b/indexing-service/src/main/java/org/apache/druid/indexing/common/actions/LocalTaskActionClient.java @@ -69,7 +69,6 @@ private R performAction(TaskAction taskAction) return result; } catch (Throwable t) { - log.error(t, "Failed to perform action[%s]", taskAction); throw new RuntimeException(t); } } diff --git a/indexing-service/src/main/java/org/apache/druid/indexing/common/task/AbstractBatchIndexTask.java b/indexing-service/src/main/java/org/apache/druid/indexing/common/task/AbstractBatchIndexTask.java index 38bc961dc47a..ec9c12a14fe3 100644 --- a/indexing-service/src/main/java/org/apache/druid/indexing/common/task/AbstractBatchIndexTask.java +++ b/indexing-service/src/main/java/org/apache/druid/indexing/common/task/AbstractBatchIndexTask.java @@ -76,6 +76,7 @@ import org.apache.druid.segment.indexing.IngestionSpec; import org.apache.druid.segment.indexing.TuningConfig; import org.apache.druid.segment.realtime.appenderator.SegmentIdWithShardSpec; +import org.apache.druid.segment.realtime.appenderator.TransactionalSegmentPublisher; import org.apache.druid.segment.transform.CompactionTransformSpec; import org.apache.druid.timeline.CompactionState; import org.apache.druid.timeline.DataSegment; @@ -456,6 +457,30 @@ protected TaskAction buildPublishAction( } } + protected TransactionalSegmentPublisher buildSegmentPublisher(TaskToolbox toolbox) + { + return new TransactionalSegmentPublisher() + { + @Override + public SegmentPublishResult publishAnnotatedSegments( + @Nullable Set segmentsToBeOverwritten, + Set segmentsToPublish, + @Nullable Object commitMetadata, + @Nullable SegmentSchemaMapping schemaMapping + ) throws IOException + { + return toolbox.getTaskActionClient().submit( + buildPublishAction( + segmentsToBeOverwritten, + segmentsToPublish, + schemaMapping, + getTaskLockHelper().getLockTypeToUse() + ) + ); + } + }; + } + protected boolean tryTimeChunkLock(TaskActionClient client, List intervals) throws IOException { // The given intervals are first converted to align with segment granularity. This is because, diff --git a/indexing-service/src/main/java/org/apache/druid/indexing/common/task/IndexTask.java b/indexing-service/src/main/java/org/apache/druid/indexing/common/task/IndexTask.java index eae1f7caf1e6..4ea7e9d3deec 100644 --- a/indexing-service/src/main/java/org/apache/druid/indexing/common/task/IndexTask.java +++ b/indexing-service/src/main/java/org/apache/druid/indexing/common/task/IndexTask.java @@ -48,7 +48,6 @@ import org.apache.druid.indexer.partitions.PartitionsSpec; import org.apache.druid.indexer.partitions.SecondaryPartitionType; import org.apache.druid.indexer.report.TaskReport; -import org.apache.druid.indexing.common.TaskLockType; import org.apache.druid.indexing.common.TaskRealtimeMetricsMonitorBuilder; import org.apache.druid.indexing.common.TaskToolbox; import org.apache.druid.indexing.common.actions.TaskActionClient; @@ -866,11 +865,7 @@ private TaskStatus generateAndPublishSegments( throw new UOE("[%s] secondary partition type is not supported", partitionsSpec.getType()); } - final TaskLockType taskLockType = getTaskLockHelper().getLockTypeToUse(); - final TransactionalSegmentPublisher publisher = - (segmentsToBeOverwritten, segmentsToPublish, commitMetadata, map) -> toolbox.getTaskActionClient().submit( - buildPublishAction(segmentsToBeOverwritten, segmentsToPublish, map, taskLockType) - ); + final TransactionalSegmentPublisher publisher = buildSegmentPublisher(toolbox); String effectiveId = getContextValue(CompactionTask.CTX_KEY_APPENDERATOR_TRACKING_TASK_ID, null); if (effectiveId == null) { diff --git a/indexing-service/src/main/java/org/apache/druid/indexing/common/task/batch/parallel/ParallelIndexSupervisorTask.java b/indexing-service/src/main/java/org/apache/druid/indexing/common/task/batch/parallel/ParallelIndexSupervisorTask.java index 86e31c74a72f..34cc71a3a127 100644 --- a/indexing-service/src/main/java/org/apache/druid/indexing/common/task/batch/parallel/ParallelIndexSupervisorTask.java +++ b/indexing-service/src/main/java/org/apache/druid/indexing/common/task/batch/parallel/ParallelIndexSupervisorTask.java @@ -45,7 +45,6 @@ import org.apache.druid.indexer.report.IngestionStatsAndErrors; import org.apache.druid.indexer.report.IngestionStatsAndErrorsTaskReport; import org.apache.druid.indexer.report.TaskReport; -import org.apache.druid.indexing.common.TaskLockType; import org.apache.druid.indexing.common.TaskToolbox; import org.apache.druid.indexing.common.actions.TaskActionClient; import org.apache.druid.indexing.common.task.AbstractBatchIndexTask; @@ -1191,12 +1190,7 @@ private void publishSegments( } } - final TaskLockType taskLockType = getTaskLockHelper().getLockTypeToUse(); - final TransactionalSegmentPublisher publisher = - (segmentsToBeOverwritten, segmentsToPublish, commitMetadata, map) -> toolbox.getTaskActionClient().submit( - buildPublishAction(segmentsToBeOverwritten, segmentsToPublish, map, taskLockType) - ); - + final TransactionalSegmentPublisher publisher = buildSegmentPublisher(toolbox); final boolean published = newSegments.isEmpty() || publisher.publishSegments(oldSegments, newSegments, annotateFunction, null, segmentSchemaMapping).isSuccess(); diff --git a/indexing-service/src/main/java/org/apache/druid/indexing/compact/CompactionScheduler.java b/indexing-service/src/main/java/org/apache/druid/indexing/compact/CompactionScheduler.java index 83a87b358c91..0df084f362c3 100644 --- a/indexing-service/src/main/java/org/apache/druid/indexing/compact/CompactionScheduler.java +++ b/indexing-service/src/main/java/org/apache/druid/indexing/compact/CompactionScheduler.java @@ -23,14 +23,14 @@ import org.apache.druid.server.coordinator.AutoCompactionSnapshot; import org.apache.druid.server.coordinator.ClusterCompactionConfig; import org.apache.druid.server.coordinator.CompactionConfigValidationResult; -import org.apache.druid.server.coordinator.CompactionSupervisorConfig; import org.apache.druid.server.coordinator.DataSourceCompactionConfig; +import org.apache.druid.server.coordinator.DruidCompactionConfig; import java.util.Map; /** - * Compaction scheduler that runs on the Overlord if {@link CompactionSupervisorConfig} - * is enabled. + * Compaction scheduler that runs on the Overlord if + * {@link DruidCompactionConfig#isUseSupervisors()} is true. *

* Usage: *

    @@ -48,6 +48,8 @@ public interface CompactionScheduler void stop(); + boolean isEnabled(); + boolean isRunning(); CompactionConfigValidationResult validateCompactionConfig(DataSourceCompactionConfig compactionConfig); diff --git a/indexing-service/src/main/java/org/apache/druid/indexing/compact/OverlordCompactionScheduler.java b/indexing-service/src/main/java/org/apache/druid/indexing/compact/OverlordCompactionScheduler.java index 020c0a0ac22c..83a2c5f9f579 100644 --- a/indexing-service/src/main/java/org/apache/druid/indexing/compact/OverlordCompactionScheduler.java +++ b/indexing-service/src/main/java/org/apache/druid/indexing/compact/OverlordCompactionScheduler.java @@ -44,7 +44,6 @@ import org.apache.druid.server.coordinator.AutoCompactionSnapshot; import org.apache.druid.server.coordinator.ClusterCompactionConfig; import org.apache.druid.server.coordinator.CompactionConfigValidationResult; -import org.apache.druid.server.coordinator.CompactionSupervisorConfig; import org.apache.druid.server.coordinator.CoordinatorOverlordServiceConfig; import org.apache.druid.server.coordinator.DataSourceCompactionConfig; import org.apache.druid.server.coordinator.DruidCompactionConfig; @@ -66,7 +65,7 @@ /** * Implementation of {@link CompactionScheduler}. *

    - * When {@link CompactionSupervisorConfig} is enabled, this class performs the + * When {@link DruidCompactionConfig#isUseSupervisors()} is true, this class performs the * following responsibilities on the leader Overlord: *

      *
    • Poll segments from metadata
    • @@ -88,7 +87,6 @@ public class OverlordCompactionScheduler implements CompactionScheduler private final ServiceEmitter emitter; private final TaskMaster taskMaster; - private final CompactionSupervisorConfig supervisorConfig; private final Supplier compactionConfigSupplier; private final ConcurrentHashMap activeDatasourceConfigs; @@ -124,7 +122,6 @@ public OverlordCompactionScheduler( SegmentsMetadataManager segmentManager, Supplier compactionConfigSupplier, CompactionStatusTracker statusTracker, - CompactionSupervisorConfig supervisorConfig, CoordinatorOverlordServiceConfig coordinatorOverlordServiceConfig, ScheduledExecutorFactory executorFactory, ServiceEmitter emitter, @@ -134,7 +131,6 @@ public OverlordCompactionScheduler( this.segmentManager = segmentManager; this.emitter = emitter; this.taskMaster = taskMaster; - this.supervisorConfig = supervisorConfig; this.compactionConfigSupplier = compactionConfigSupplier; this.executor = executorFactory.create(1, "CompactionScheduler-%s"); @@ -202,7 +198,7 @@ public CompactionConfigValidationResult validateCompactionConfig(DataSourceCompa } else { return ClientCompactionRunnerInfo.validateCompactionConfig( compactionConfig, - supervisorConfig.getEngine() + getLatestConfig().getEngine() ); } } @@ -249,9 +245,10 @@ private synchronized void cleanupState() } } - private boolean isEnabled() + @Override + public boolean isEnabled() { - return supervisorConfig.isEnabled(); + return compactionConfigSupplier.get().isUseSupervisors(); } private synchronized void scheduledRun() @@ -272,7 +269,7 @@ private synchronized void scheduledRun() private synchronized void runCompactionDuty() { final CoordinatorRunStats stats = new CoordinatorRunStats(); - duty.run(getLatestConfig(), getDatasourceSnapshot(), supervisorConfig.getEngine(), stats); + duty.run(getLatestConfig(), getDatasourceSnapshot(), getLatestConfig().getEngine(), stats); // Emit stats only if emission period has elapsed if (!sinceStatsEmitted.isRunning() || sinceStatsEmitted.hasElapsed(METRIC_EMISSION_PERIOD)) { @@ -310,7 +307,7 @@ public CompactionSimulateResult simulateRunWithConfigUpdate(ClusterCompactionCon return new CompactionRunSimulator(statusTracker, overlordClient).simulateRunWithConfig( getLatestConfig().withClusterConfig(updateRequest), getDatasourceSnapshot(), - supervisorConfig.getEngine() + getLatestConfig().getEngine() ); } else { return new CompactionSimulateResult(Collections.emptyMap()); diff --git a/indexing-service/src/main/java/org/apache/druid/indexing/overlord/http/OverlordCompactionResource.java b/indexing-service/src/main/java/org/apache/druid/indexing/overlord/http/OverlordCompactionResource.java index 425dfc9f35f6..b29cefef83c7 100644 --- a/indexing-service/src/main/java/org/apache/druid/indexing/overlord/http/OverlordCompactionResource.java +++ b/indexing-service/src/main/java/org/apache/druid/indexing/overlord/http/OverlordCompactionResource.java @@ -29,7 +29,6 @@ import org.apache.druid.server.compaction.CompactionStatusResponse; import org.apache.druid.server.coordinator.AutoCompactionSnapshot; import org.apache.druid.server.coordinator.ClusterCompactionConfig; -import org.apache.druid.server.coordinator.CompactionSupervisorConfig; import org.apache.druid.server.http.ServletResourceUtils; import org.apache.druid.server.http.security.StateResourceFilter; @@ -52,16 +51,13 @@ public class OverlordCompactionResource { private final CompactionScheduler scheduler; - private final CompactionSupervisorConfig supervisorConfig; @Inject public OverlordCompactionResource( - CompactionSupervisorConfig supervisorConfig, CompactionScheduler scheduler ) { this.scheduler = scheduler; - this.supervisorConfig = supervisorConfig; } @GET @@ -70,7 +66,7 @@ public OverlordCompactionResource( @ResourceFilters(StateResourceFilter.class) public Response isCompactionSupervisorEnabled() { - return Response.ok(supervisorConfig.isEnabled()).build(); + return Response.ok(scheduler.isEnabled()).build(); } @GET @@ -81,7 +77,7 @@ public Response getCompactionProgress( @QueryParam("dataSource") String dataSource ) { - if (!supervisorConfig.isEnabled()) { + if (!scheduler.isEnabled()) { return buildErrorResponseIfSchedulerDisabled(); } @@ -106,7 +102,7 @@ public Response getCompactionSnapshots( @QueryParam("dataSource") String dataSource ) { - if (!supervisorConfig.isEnabled()) { + if (!scheduler.isEnabled()) { return buildErrorResponseIfSchedulerDisabled(); } diff --git a/indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/SequenceMetadata.java b/indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/SequenceMetadata.java index 2da858f80ccd..f974a1c6c932 100644 --- a/indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/SequenceMetadata.java +++ b/indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/SequenceMetadata.java @@ -331,7 +331,7 @@ TransactionalSegmentPublisher createPublisher( } private class SequenceMetadataTransactionalSegmentPublisher - implements TransactionalSegmentPublisher + extends TransactionalSegmentPublisher { private final SeekableStreamIndexTaskRunner runner; private final TaskToolbox toolbox; diff --git a/indexing-service/src/test/java/org/apache/druid/indexing/common/actions/SegmentTransactionalInsertActionTest.java b/indexing-service/src/test/java/org/apache/druid/indexing/common/actions/SegmentTransactionalInsertActionTest.java index 7d5f4488fea0..095e9c3b57d2 100644 --- a/indexing-service/src/test/java/org/apache/druid/indexing/common/actions/SegmentTransactionalInsertActionTest.java +++ b/indexing-service/src/test/java/org/apache/druid/indexing/common/actions/SegmentTransactionalInsertActionTest.java @@ -31,7 +31,6 @@ import org.apache.druid.indexing.overlord.Segments; import org.apache.druid.indexing.overlord.TimeChunkLockRequest; import org.apache.druid.java.util.common.Intervals; -import org.apache.druid.metadata.RetryTransactionException; import org.apache.druid.timeline.DataSegment; import org.apache.druid.timeline.partition.LinearShardSpec; import org.assertj.core.api.Assertions; @@ -150,11 +149,9 @@ public void testFailTransactionalUpdateDataSourceMetadata() throws Exception ); Assert.assertEquals( - SegmentPublishResult.fail( - new RetryTransactionException( - "The new start metadata state[ObjectMetadata{theObject=[1]}] is" - + " ahead of the last committed end state[null]. Try resetting the supervisor." - ).toString() + SegmentPublishResult.retryableFailure( + "The new start metadata state[ObjectMetadata{theObject=[1]}] is" + + " ahead of the last committed end state[null]. Try resetting the supervisor." ), result ); diff --git a/indexing-service/src/test/java/org/apache/druid/indexing/compact/OverlordCompactionSchedulerTest.java b/indexing-service/src/test/java/org/apache/druid/indexing/compact/OverlordCompactionSchedulerTest.java index 2805b05cc6f5..c627a0a4d786 100644 --- a/indexing-service/src/test/java/org/apache/druid/indexing/compact/OverlordCompactionSchedulerTest.java +++ b/indexing-service/src/test/java/org/apache/druid/indexing/compact/OverlordCompactionSchedulerTest.java @@ -51,7 +51,6 @@ import org.apache.druid.server.coordinator.AutoCompactionSnapshot; import org.apache.druid.server.coordinator.ClusterCompactionConfig; import org.apache.druid.server.coordinator.CompactionConfigValidationResult; -import org.apache.druid.server.coordinator.CompactionSupervisorConfig; import org.apache.druid.server.coordinator.CoordinatorOverlordServiceConfig; import org.apache.druid.server.coordinator.CreateDataSegments; import org.apache.druid.server.coordinator.DataSourceCompactionConfig; @@ -90,7 +89,6 @@ public class OverlordCompactionSchedulerTest ); } - private CompactionSupervisorConfig supervisorConfig; private DruidCompactionConfig compactionConfig; private CoordinatorOverlordServiceConfig coordinatorOverlordServiceConfig; @@ -128,14 +126,13 @@ public void setUp() serviceEmitter = new StubServiceEmitter(); segmentsMetadataManager = new TestSegmentsMetadataManager(); - supervisorConfig = new CompactionSupervisorConfig(true, null); compactionConfig = DruidCompactionConfig.empty(); coordinatorOverlordServiceConfig = new CoordinatorOverlordServiceConfig(false, null); - initScheduler(); + initScheduler(true); } - private void initScheduler() + private void initScheduler(boolean isSupervisorEnabled) { TaskLockbox taskLockbox = new TaskLockbox(taskStorage, new TestIndexerMetadataStorageCoordinator()); WorkerBehaviorConfig defaultWorkerConfig @@ -144,9 +141,10 @@ private void initScheduler() taskMaster, new TaskQueryTool(taskStorage, taskLockbox, taskMaster, null, () -> defaultWorkerConfig), segmentsMetadataManager, - () -> compactionConfig, + () -> compactionConfig.withClusterConfig( + new ClusterCompactionConfig(null, null, null, isSupervisorEnabled, null) + ), new CompactionStatusTracker(OBJECT_MAPPER), - supervisorConfig, coordinatorOverlordServiceConfig, (nameFormat, numThreads) -> new WrappingScheduledExecutorService("test", executor, false), serviceEmitter, @@ -157,7 +155,6 @@ private void initScheduler() @Test public void testStartStopWhenSchedulerIsEnabled() { - supervisorConfig = new CompactionSupervisorConfig(true, null); Assert.assertFalse(scheduler.isRunning()); scheduler.start(); @@ -176,8 +173,7 @@ public void testStartStopWhenSchedulerIsEnabled() @Test public void testStartStopWhenScheduledIsDisabled() { - supervisorConfig = new CompactionSupervisorConfig(false, null); - initScheduler(); + initScheduler(false); Assert.assertFalse(scheduler.isRunning()); scheduler.start(); @@ -191,8 +187,7 @@ public void testStartStopWhenScheduledIsDisabled() @Test public void testSegmentsAreNotPolledWhenSchedulerIsDisabled() { - supervisorConfig = new CompactionSupervisorConfig(false, null); - initScheduler(); + initScheduler(false); verifySegmentPolling(false); } @@ -201,7 +196,7 @@ public void testSegmentsAreNotPolledWhenSchedulerIsDisabled() public void testSegmentsArePolledWhenRunningInStandaloneMode() { coordinatorOverlordServiceConfig = new CoordinatorOverlordServiceConfig(false, null); - initScheduler(); + initScheduler(true); verifySegmentPolling(true); } @@ -210,7 +205,7 @@ public void testSegmentsArePolledWhenRunningInStandaloneMode() public void testSegmentsAreNotPolledWhenRunningInCoordinatorMode() { coordinatorOverlordServiceConfig = new CoordinatorOverlordServiceConfig(true, "overlord"); - initScheduler(); + initScheduler(true); verifySegmentPolling(false); } @@ -345,7 +340,7 @@ public void testRunSimulation() ); final CompactionSimulateResult simulateResult = scheduler.simulateRunWithConfigUpdate( - new ClusterCompactionConfig(null, null, null, null) + new ClusterCompactionConfig(null, null, null, null, null) ); Assert.assertEquals(1, simulateResult.getCompactionStates().size()); final Table pendingCompactionTable = simulateResult.getCompactionStates().get(CompactionStatus.State.PENDING); @@ -370,7 +365,7 @@ public void testRunSimulation() scheduler.stopCompaction(TestDataSource.WIKI); final CompactionSimulateResult simulateResultWhenDisabled = scheduler.simulateRunWithConfigUpdate( - new ClusterCompactionConfig(null, null, null, null) + new ClusterCompactionConfig(null, null, null, null, null) ); Assert.assertTrue(simulateResultWhenDisabled.getCompactionStates().isEmpty()); diff --git a/indexing-service/src/test/java/org/apache/druid/indexing/overlord/http/OverlordCompactionResourceTest.java b/indexing-service/src/test/java/org/apache/druid/indexing/overlord/http/OverlordCompactionResourceTest.java index d0aba195c423..de9cd7ec6c06 100644 --- a/indexing-service/src/test/java/org/apache/druid/indexing/overlord/http/OverlordCompactionResourceTest.java +++ b/indexing-service/src/test/java/org/apache/druid/indexing/overlord/http/OverlordCompactionResourceTest.java @@ -29,7 +29,6 @@ import org.apache.druid.server.compaction.CompactionStatistics; import org.apache.druid.server.compaction.CompactionStatusResponse; import org.apache.druid.server.coordinator.AutoCompactionSnapshot; -import org.apache.druid.server.coordinator.CompactionSupervisorConfig; import org.easymock.EasyMock; import org.hamcrest.MatcherAssert; import org.junit.After; @@ -43,17 +42,13 @@ public class OverlordCompactionResourceTest { - private static final CompactionSupervisorConfig SUPERVISOR_ENABLED - = new CompactionSupervisorConfig(true, null); - private static final CompactionSupervisorConfig SUPERVISOR_DISABLED - = new CompactionSupervisorConfig(false, null); - private CompactionScheduler scheduler; @Before public void setUp() { scheduler = EasyMock.createStrictMock(CompactionScheduler.class); + EasyMock.expect(scheduler.isEnabled()).andReturn(true).anyTimes(); } @After @@ -74,7 +69,7 @@ public void testGetCompactionSnapshotWithEmptyDatasource() .andReturn(allSnapshots).once(); EasyMock.replay(scheduler); - final Response response = new OverlordCompactionResource(SUPERVISOR_ENABLED, scheduler) + final Response response = new OverlordCompactionResource(scheduler) .getCompactionSnapshots(""); Assert.assertEquals(200, response.getStatus()); Assert.assertEquals( @@ -95,7 +90,7 @@ public void testGetCompactionSnapshotWithNullDatasource() .andReturn(allSnapshots).once(); EasyMock.replay(scheduler); - final Response response = new OverlordCompactionResource(SUPERVISOR_ENABLED, scheduler) + final Response response = new OverlordCompactionResource(scheduler) .getCompactionSnapshots(null); Assert.assertEquals(200, response.getStatus()); Assert.assertEquals( @@ -113,7 +108,7 @@ public void testGetCompactionSnapshotWithValidDatasource() .andReturn(snapshot).once(); EasyMock.replay(scheduler); - final Response response = new OverlordCompactionResource(SUPERVISOR_ENABLED, scheduler) + final Response response = new OverlordCompactionResource(scheduler) .getCompactionSnapshots(TestDataSource.WIKI); Assert.assertEquals(200, response.getStatus()); Assert.assertEquals( @@ -129,7 +124,7 @@ public void testGetCompactionSnapshotWithInvalidDatasource() .andReturn(null).once(); EasyMock.replay(scheduler); - final Response response = new OverlordCompactionResource(SUPERVISOR_ENABLED, scheduler) + final Response response = new OverlordCompactionResource(scheduler) .getCompactionSnapshots(TestDataSource.KOALA); Assert.assertEquals(404, response.getStatus()); } @@ -146,7 +141,7 @@ public void testGetProgressForValidDatasource() .andReturn(snapshot).once(); EasyMock.replay(scheduler); - final Response response = new OverlordCompactionResource(SUPERVISOR_ENABLED, scheduler) + final Response response = new OverlordCompactionResource(scheduler) .getCompactionProgress(TestDataSource.WIKI); Assert.assertEquals(200, response.getStatus()); Assert.assertEquals(new CompactionProgressResponse(100L), response.getEntity()); @@ -157,7 +152,7 @@ public void testGetProgressForNullDatasourceReturnsBadRequest() { EasyMock.replay(scheduler); - final Response response = new OverlordCompactionResource(SUPERVISOR_ENABLED, scheduler) + final Response response = new OverlordCompactionResource(scheduler) .getCompactionProgress(null); Assert.assertEquals(Response.Status.BAD_REQUEST.getStatusCode(), response.getStatus()); @@ -177,7 +172,7 @@ public void testGetProgressForInvalidDatasourceReturnsNotFound() .andReturn(null).once(); EasyMock.replay(scheduler); - final Response response = new OverlordCompactionResource(SUPERVISOR_ENABLED, scheduler) + final Response response = new OverlordCompactionResource(scheduler) .getCompactionProgress(TestDataSource.KOALA); Assert.assertEquals(Response.Status.NOT_FOUND.getStatusCode(), response.getStatus()); @@ -193,9 +188,12 @@ public void testGetProgressForInvalidDatasourceReturnsNotFound() @Test public void testGetProgressReturnsUnsupportedWhenSupervisorDisabled() { + scheduler = EasyMock.createStrictMock(CompactionScheduler.class); + EasyMock.expect(scheduler.isEnabled()).andReturn(false).once(); EasyMock.replay(scheduler); + verifyResponseWhenSupervisorDisabled( - new OverlordCompactionResource(SUPERVISOR_DISABLED, scheduler) + new OverlordCompactionResource(scheduler) .getCompactionProgress(TestDataSource.WIKI) ); } @@ -203,9 +201,12 @@ public void testGetProgressReturnsUnsupportedWhenSupervisorDisabled() @Test public void testGetSnapshotReturnsUnsupportedWhenSupervisorDisabled() { + scheduler = EasyMock.createStrictMock(CompactionScheduler.class); + EasyMock.expect(scheduler.isEnabled()).andReturn(false).once(); EasyMock.replay(scheduler); + verifyResponseWhenSupervisorDisabled( - new OverlordCompactionResource(SUPERVISOR_DISABLED, scheduler) + new OverlordCompactionResource(scheduler) .getCompactionSnapshots(TestDataSource.WIKI) ); } diff --git a/integration-tests-ex/cases/src/test/java/org/apache/druid/testsEx/utils/DruidClusterAdminClient.java b/integration-tests-ex/cases/src/test/java/org/apache/druid/testsEx/utils/DruidClusterAdminClient.java index 9c15eef30c5f..48b7e4b6236b 100644 --- a/integration-tests-ex/cases/src/test/java/org/apache/druid/testsEx/utils/DruidClusterAdminClient.java +++ b/integration-tests-ex/cases/src/test/java/org/apache/druid/testsEx/utils/DruidClusterAdminClient.java @@ -215,7 +215,7 @@ public Pair runCommandInDockerContainer(String serviceName, Stri .exec(new ExecStartResultCallback(stdout, stderr)) .awaitCompletion(); - return new Pair<>(stdout.toString(StandardCharsets.UTF_8.name()), stderr.toString(StandardCharsets.UTF_8.name())); + return new Pair<>(stdout.toString(StandardCharsets.UTF_8), stderr.toString(StandardCharsets.UTF_8)); } public void restartDockerContainer(String serviceName) diff --git a/integration-tests/src/main/java/org/apache/druid/testing/clients/CompactionResourceTestClient.java b/integration-tests/src/main/java/org/apache/druid/testing/clients/CompactionResourceTestClient.java index 849af4975673..da0b2f3516d0 100644 --- a/integration-tests/src/main/java/org/apache/druid/testing/clients/CompactionResourceTestClient.java +++ b/integration-tests/src/main/java/org/apache/druid/testing/clients/CompactionResourceTestClient.java @@ -145,21 +145,14 @@ public void forceTriggerAutoCompaction() throws Exception } } - public void updateCompactionTaskSlot(Double compactionTaskSlotRatio, Integer maxCompactionTaskSlots, Boolean useAutoScaleSlots) throws Exception + public void updateCompactionTaskSlot(Double compactionTaskSlotRatio, Integer maxCompactionTaskSlots) throws Exception { - String url; - if (useAutoScaleSlots == null) { - url = StringUtils.format("%sconfig/compaction/taskslots?ratio=%s&max=%s", - getCoordinatorURL(), - StringUtils.urlEncode(compactionTaskSlotRatio.toString()), - StringUtils.urlEncode(maxCompactionTaskSlots.toString())); - } else { - url = StringUtils.format("%sconfig/compaction/taskslots?ratio=%s&max=%s&useAutoScaleSlots=%s", - getCoordinatorURL(), - StringUtils.urlEncode(compactionTaskSlotRatio.toString()), - StringUtils.urlEncode(maxCompactionTaskSlots.toString()), - StringUtils.urlEncode(useAutoScaleSlots.toString())); - } + String url = StringUtils.format( + "%sconfig/compaction/taskslots?ratio=%s&max=%s", + getCoordinatorURL(), + StringUtils.urlEncode(compactionTaskSlotRatio.toString()), + StringUtils.urlEncode(maxCompactionTaskSlots.toString()) + ); StatusResponseHolder response = httpClient.go(new Request(HttpMethod.POST, new URL(url)), responseHandler).get(); if (!response.getStatus().equals(HttpResponseStatus.OK)) { throw new ISE( diff --git a/integration-tests/src/main/java/org/apache/druid/testing/utils/DruidClusterAdminClient.java b/integration-tests/src/main/java/org/apache/druid/testing/utils/DruidClusterAdminClient.java index 6b98306ca0e6..bc65fb3d8db3 100644 --- a/integration-tests/src/main/java/org/apache/druid/testing/utils/DruidClusterAdminClient.java +++ b/integration-tests/src/main/java/org/apache/druid/testing/utils/DruidClusterAdminClient.java @@ -214,7 +214,7 @@ public Pair runCommandInDockerContainer(String serviceName, Stri .exec(new ExecStartResultCallback(stdout, stderr)) .awaitCompletion(); - return new Pair<>(stdout.toString(StandardCharsets.UTF_8.name()), stderr.toString(StandardCharsets.UTF_8.name())); + return new Pair<>(stdout.toString(StandardCharsets.UTF_8), stderr.toString(StandardCharsets.UTF_8)); } public void restartDockerContainer(String serviceName) diff --git a/integration-tests/src/test/java/org/apache/druid/tests/coordinator/duty/ITAutoCompactionLockContentionTest.java b/integration-tests/src/test/java/org/apache/druid/tests/coordinator/duty/ITAutoCompactionLockContentionTest.java index 0a1071c38e71..a5943aacb336 100644 --- a/integration-tests/src/test/java/org/apache/druid/tests/coordinator/duty/ITAutoCompactionLockContentionTest.java +++ b/integration-tests/src/test/java/org/apache/druid/tests/coordinator/duty/ITAutoCompactionLockContentionTest.java @@ -310,7 +310,7 @@ private void submitAndVerifyCompactionConfig() throws Exception .withSkipOffsetFromLatest(Period.ZERO) .withMaxRowsPerSegment(Specs.MAX_ROWS_PER_SEGMENT) .build(); - compactionResource.updateCompactionTaskSlot(0.5, 10, null); + compactionResource.updateCompactionTaskSlot(0.5, 10); compactionResource.submitCompactionConfig(dataSourceCompactionConfig); // Wait for compaction config to persist diff --git a/integration-tests/src/test/java/org/apache/druid/tests/coordinator/duty/ITAutoCompactionTest.java b/integration-tests/src/test/java/org/apache/druid/tests/coordinator/duty/ITAutoCompactionTest.java index baf7177b373d..e993dafdbcfd 100644 --- a/integration-tests/src/test/java/org/apache/druid/tests/coordinator/duty/ITAutoCompactionTest.java +++ b/integration-tests/src/test/java/org/apache/druid/tests/coordinator/duty/ITAutoCompactionTest.java @@ -133,7 +133,7 @@ public static Object[][] engine() public void setup() throws Exception { // Set compaction slot to 5 - updateCompactionTaskSlot(0.5, 10, null); + updateCompactionTaskSlot(0.5, 10); fullDatasourceName = "wikipedia_index_test_" + UUID.randomUUID() + config.getExtraDatasourceNameSuffix(); } @@ -410,7 +410,7 @@ public void testAutoCompactionWithMetricColumnSameAsInputColShouldOverwriteInput // added = 31 loadData(INDEX_TASK_WITHOUT_ROLLUP_FOR_PRESERVE_METRICS); if (engine == CompactionEngine.MSQ) { - updateCompactionTaskSlot(0.1, 2, false); + updateCompactionTaskSlot(0.1, 2); } try (final Closeable ignored = unloader(fullDatasourceName)) { final List intervalsBeforeCompaction = coordinator.getSegmentIntervals(fullDatasourceName); @@ -744,7 +744,7 @@ public void testAutoCompactionDutyCanDeleteCompactionConfig(CompactionEngine eng public void testAutoCompactionDutyCanUpdateTaskSlots() throws Exception { // Set compactionTaskSlotRatio to 0 to prevent any compaction - updateCompactionTaskSlot(0, 0, null); + updateCompactionTaskSlot(0, 0); loadData(INDEX_TASK); try (final Closeable ignored = unloader(fullDatasourceName)) { final List intervalsBeforeCompaction = coordinator.getSegmentIntervals(fullDatasourceName); @@ -761,7 +761,7 @@ public void testAutoCompactionDutyCanUpdateTaskSlots() throws Exception checkCompactionIntervals(intervalsBeforeCompaction); Assert.assertNull(compactionResource.getCompactionStatus(fullDatasourceName)); // Update compaction slots to be 1 - updateCompactionTaskSlot(1, 1, null); + updateCompactionTaskSlot(1, 1); // One day compacted (1 new segment) and one day remains uncompacted. (3 total) forceTriggerAutoCompaction(3); verifyQuery(INDEX_QUERIES_RESOURCE); @@ -1365,7 +1365,7 @@ public void testAutoCompactionDutyWithSegmentGranularityAndSmallerSegmentGranula @Test public void testAutoCompactionDutyWithSegmentGranularityFinerAndNotAlignWithSegment() throws Exception { - updateCompactionTaskSlot(1, 1, null); + updateCompactionTaskSlot(1, 1); final ISOChronology chrono = ISOChronology.getInstance(DateTimes.inferTzFromString("America/Los_Angeles")); Map specs = ImmutableMap.of("%%GRANULARITYSPEC%%", new UniformGranularitySpec(Granularities.MONTH, Granularities.DAY, false, ImmutableList.of(new Interval("2013-08-31/2013-09-02", chrono)))); loadData(INDEX_TASK_WITH_GRANULARITY_SPEC, specs); @@ -1416,7 +1416,7 @@ public void testAutoCompactionDutyWithSegmentGranularityFinerAndNotAlignWithSegm @Test(dataProvider = "engine") public void testAutoCompactionDutyWithSegmentGranularityCoarserAndNotAlignWithSegment(CompactionEngine engine) throws Exception { - updateCompactionTaskSlot(1, 1, null); + updateCompactionTaskSlot(1, 1); final ISOChronology chrono = ISOChronology.getInstance(DateTimes.inferTzFromString("America/Los_Angeles")); Map specs = ImmutableMap.of("%%GRANULARITYSPEC%%", new UniformGranularitySpec(Granularities.WEEK, Granularities.DAY, false, ImmutableList.of(new Interval("2013-08-31/2013-09-02", chrono)))); loadData(INDEX_TASK_WITH_GRANULARITY_SPEC, specs); @@ -1745,24 +1745,6 @@ public void testAutoCompactionDutyWithOverlappingInterval() throws Exception } } - @Test - public void testUpdateCompactionTaskSlotWithUseAutoScaleSlots() throws Exception - { - // First try update without useAutoScaleSlots - updateCompactionTaskSlot(3, 5, null); - DruidCompactionConfig compactionConfig = compactionResource.getCompactionConfig(); - // Should be default value which is false - Assert.assertFalse(compactionConfig.isUseAutoScaleSlots()); - // Now try update from default value to useAutoScaleSlots=true - updateCompactionTaskSlot(3, 5, true); - compactionConfig = compactionResource.getCompactionConfig(); - Assert.assertTrue(compactionConfig.isUseAutoScaleSlots()); - // Now try update from useAutoScaleSlots=true to useAutoScaleSlots=false - updateCompactionTaskSlot(3, 5, false); - compactionConfig = compactionResource.getCompactionConfig(); - Assert.assertFalse(compactionConfig.isUseAutoScaleSlots()); - } - private void loadData(String indexTask) throws Exception { loadData(indexTask, ImmutableMap.of()); @@ -2062,16 +2044,13 @@ private void verifySegmentsCompactedDimensionSchema(List dimens } } - private void updateCompactionTaskSlot(double compactionTaskSlotRatio, int maxCompactionTaskSlots, Boolean useAutoScaleSlots) throws Exception + private void updateCompactionTaskSlot(double compactionTaskSlotRatio, int maxCompactionTaskSlots) throws Exception { - compactionResource.updateCompactionTaskSlot(compactionTaskSlotRatio, maxCompactionTaskSlots, useAutoScaleSlots); + compactionResource.updateCompactionTaskSlot(compactionTaskSlotRatio, maxCompactionTaskSlots); // Verify that the compaction config is updated correctly. DruidCompactionConfig compactionConfig = compactionResource.getCompactionConfig(); Assert.assertEquals(compactionConfig.getCompactionTaskSlotRatio(), compactionTaskSlotRatio); Assert.assertEquals(compactionConfig.getMaxCompactionTaskSlots(), maxCompactionTaskSlots); - if (useAutoScaleSlots != null) { - Assert.assertEquals(compactionConfig.isUseAutoScaleSlots(), useAutoScaleSlots.booleanValue()); - } } private void getAndAssertCompactionStatus( diff --git a/quidem-ut/pom.xml b/quidem-ut/pom.xml index f06fddf94622..6c7aab5c4279 100644 --- a/quidem-ut/pom.xml +++ b/quidem-ut/pom.xml @@ -424,7 +424,12 @@ test-jar ${project.parent.version} - + + org.apache.druid.extensions + druid-multi-stage-query + test-jar + ${project.parent.version} + org.apache.druid.extensions druid-datasketches @@ -514,6 +519,10 @@ hamcrest-core compile + + org.mockito + mockito-core + diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart1.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart1.iq new file mode 100644 index 000000000000..b8a8415e4f88 --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart1.iq @@ -0,0 +1,46 @@ +!set dartQueryId 00000000-0000-0000-0000-000000000000 +!use druidtest://?componentSupplier=DartComponentSupplier +!set outputformat mysql + +select * from numfoo; ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +| __time | dim1 | dim2 | dim3 | dim4 | dim5 | dim6 | dbl1 | dbl2 | f1 | f2 | l1 | l2 | cnt | m1 | m2 | unique_dim1 | ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +| 2000-01-01 00:00:00.000 | | a | ["a","b"] | a | aa | 1 | 1.0 | | 1.0 | | 7 | | 1 | 1.0 | 1.0 | "AQAAAEAAAA==" | +| 2000-01-02 00:00:00.000 | 10.1 | | ["b","c"] | a | ab | 2 | 1.7 | 1.7 | 0.1 | 0.1 | 325323 | 325323 | 1 | 2.0 | 2.0 | "AQAAAQAAAAHNBA==" | +| 2001-01-01 00:00:00.000 | 1 | a | | b | ad | 4 | | | | | | | 1 | 4.0 | 4.0 | "AQAAAQAAAAFREA==" | +| 2001-01-02 00:00:00.000 | def | abc | | b | aa | 5 | | | | | | | 1 | 5.0 | 5.0 | "AQAAAQAAAACyEA==" | +| 2001-01-03 00:00:00.000 | abc | | | b | ab | 6 | | | | | | | 1 | 6.0 | 6.0 | "AQAAAQAAAAEkAQ==" | +| 2000-01-03 00:00:00.000 | 2 | | d | a | ba | 3 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0 | 1 | 3.0 | 3.0 | "AQAAAQAAAAOzAg==" | ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +(6 rows) + +!ok +select * from numfoo; ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +| __time | dim1 | dim2 | dim3 | dim4 | dim5 | dim6 | dbl1 | dbl2 | f1 | f2 | l1 | l2 | cnt | m1 | m2 | unique_dim1 | ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +| 2000-01-01 00:00:00.000 | | a | ["a","b"] | a | aa | 1 | 1.0 | | 1.0 | | 7 | | 1 | 1.0 | 1.0 | "AQAAAEAAAA==" | +| 2000-01-02 00:00:00.000 | 10.1 | | ["b","c"] | a | ab | 2 | 1.7 | 1.7 | 0.1 | 0.1 | 325323 | 325323 | 1 | 2.0 | 2.0 | "AQAAAQAAAAHNBA==" | +| 2000-01-03 00:00:00.000 | 2 | | d | a | ba | 3 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0 | 1 | 3.0 | 3.0 | "AQAAAQAAAAOzAg==" | +| 2001-01-01 00:00:00.000 | 1 | a | | b | ad | 4 | | | | | | | 1 | 4.0 | 4.0 | "AQAAAQAAAAFREA==" | +| 2001-01-02 00:00:00.000 | def | abc | | b | aa | 5 | | | | | | | 1 | 5.0 | 5.0 | "AQAAAQAAAACyEA==" | +| 2001-01-03 00:00:00.000 | abc | | | b | ab | 6 | | | | | | | 1 | 6.0 | 6.0 | "AQAAAQAAAAEkAQ==" | ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +(6 rows) + +!ok +select length(dim1) from numfoo; ++--------+ +| EXPR$0 | ++--------+ +| 0 | +| 1 | +| 1 | +| 3 | +| 3 | +| 4 | ++--------+ +(6 rows) + +!ok diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart_with_datasets.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart_with_datasets.iq new file mode 100644 index 000000000000..65dbce0f087b --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart_with_datasets.iq @@ -0,0 +1,13 @@ +!set dartQueryId 00000000-0000-0000-0000-000000000000 +!use druidtest://?componentSupplier=StandardMSQComponentSupplier&datasets=sql/src/test/quidem/sampledataset +!set outputformat mysql + +select count(1) from "rollup-tutorial"; ++--------+ +| EXPR$0 | ++--------+ +| 9 | ++--------+ +(1 row) + +!ok diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql.iq new file mode 100644 index 000000000000..45966103fc51 --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql.iq @@ -0,0 +1,29891 @@ +!set useApproximateCountDistinct false +!use druidtest://?componentSupplier=StandardComponentSupplier&datasets=sql/src/test/quidem/qatests/qaUnnest/array&numMergeBuffers=3 +!set outputformat mysql +SELECT * +FROM test_unnest; ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| __time | s_int | s_null | a_bool | a_int | a_float | a_str | a_null | a_empty | a_mixed | a_nested | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2022-01-01 00:00:00.000 | 1 | | [1, 0, null] | [1, 2, null] | [0.1, 0.2, null] | [S1, S2, null] | [null, null, null] | [] | [true, 1, 0.1, S1, null] | [[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null]]]] | +| 2022-02-01 00:00:00.000 | 2 | | [null, 1, 0] | [null, 1, 2] | [null, 0.1, 0.2] | [null, S1, S2] | [null, null, null] | [] | [null, true, 1, 0.1, S1] | [[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"]]]] | +| 2022-03-01 00:00:00.000 | | | [0, null, 1] | [2, null, 1] | [0.2, null, 0.1] | [S2, null, S1] | [null, null, null] | [] | [S1, null, true, 1, 0.1] | [[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1]]]] | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(doesnt_exist) AS u(c); +not found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(doesnt_exist) AS u(c) +GROUP BY c; +not found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT * +FROM test_unnest, + unnest(a_int) AS u(a_int); +is ambiguous +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT * +FROM test_unnest, + unnest(a_int) AS u(a_int) +GROUP BY c; +is ambiguous +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int0 +FROM test_unnest, + unnest(a_int) AS u(s_int); +not found in any table +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT u.s_int +FROM test_unnest, + unnest(a_int) AS u(s_int); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) +FROM + (SELECT u.s_int + FROM test_unnest, + unnest(a_int) AS u(s_int)); ++--------+ +| EXPR$0 | ++--------+ +| 9 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) +FROM test_unnest, + unnest(a_int) AS u(s_int); ++--------+ +| EXPR$0 | ++--------+ +| 9 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int0 +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(s_int)); ++--------+ +| s_int0 | ++--------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++--------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(s_int)); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B11 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT u.s_int +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(s_int)); +not found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int0, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(s_int) +GROUP BY s_int0; +not found in any table +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT u.s_int, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(s_int) +GROUP BY u.s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + strlen(unnest(a_int)) AS u(c); +unexpected token +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + strlen(unnest(a_int)) AS u(c) +GROUP BY c; +unexpected token +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B16 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_slice(a_int, 0, 2)) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_slice(a_int, 0, 2)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_append(a_int, 9)) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 9 | +| 9 | +| 9 | +| | +| | +| | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B19 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_append(a_int, 9)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 1 | +| 2 | +| 9 | +| | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c || 'Z') col +FROM test_unnest, + unnest(a_int) AS u(c); ++-----+ +| col | ++-----+ +| 1Z | +| 1Z | +| 1Z | +| 2Z | +| 2Z | +| 2Z | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c || 'Z') col +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c; ++-----+ +| col | ++-----+ +| 1Z | +| 2Z | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c) col +FROM test_unnest, + unnest(a_int) AS u(c); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c) col +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c || 'Z') col +FROM test_unnest, + unnest(a_int) AS u(c); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c || 'Z') col +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c || c) col +FROM test_unnest, + unnest(a_int) AS u(c); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c || c) col +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B28 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c, + a_int AS new_col +FROM test_unnest, + unnest(new_col) AS u(c); +not found in any table +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT a_int AS new_col + FROM test_unnest) t1, + unnest(new_col) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c AS new_col +FROM test_unnest, + unnest(a_int) AS u(c); ++---------+ +| new_col | ++---------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++---------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(s_int) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(s_int) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A2_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(s_null) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A2_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(s_null) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_null) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_null) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_empty) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_empty) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A5_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_nested) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A5_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_nested) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM unnest(array[NULL, 1, 2]) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM unnest(array[NULL, 1, 2]) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 1 | +| 2 | 1 | +| | 1 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_append(a_int, 9)) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 9 | +| 9 | +| 9 | +| | +| | +| | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_append(a_int, 9)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 1 | +| 2 | +| 9 | +| | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A8_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_concat(a_int, a_int)) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| | +| | +| | +| | +| | +| | ++---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A8_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_concat(a_int, a_int)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A9_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_slice(a_int, 0, 2)) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A9_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(array_slice(a_int, 0, 2)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A10_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A10_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A11_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A11_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A12_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A12_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY c; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A13_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | +| | +| | +| | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A13_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY c; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A14_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | +| | +| | +| | ++------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A14_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY c; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A15_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c); ++-------+ +| c | ++-------+ +| false | +| false | +| false | +| true | +| true | +| true | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A15_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY c; ++-------+ +| c | ++-------+ +| false | +| true | +| | ++-------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A16_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A16_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A17_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A17_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY c; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A18_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | +| | +| | +| | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A18_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A19_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A19_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A20_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A20_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A21_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | +| | +| | +| | ++------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_array TEST_ID: A21_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_explain TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- + +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +{ + "queryType" : "scan", + "dataSource" : { + "type" : "unnest", + "base" : { + "type" : "table", + "name" : "test_unnest" + }, + "virtualColumn" : { + "type" : "expression", + "name" : "j0.unnest", + "expression" : "\"a_int\"", + "outputType" : "ARRAY" + }, + "unnestFilter" : null + }, + "intervals" : { + "type" : "intervals", + "intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ] + }, + "resultFormat" : "compactedList", + "columns" : [ "j0.unnest" ], + "columnTypes" : [ "LONG" ], + "granularity" : { + "type" : "all" + }, + "legacy" : false +} +!nativePlan + +#------------------------------------------------------------------------- +# TESTCASE: test_explain TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- + +SELECT * +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)); ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---+ +| __time | s_int | s_null | a_bool | a_int | a_float | a_str | a_null | a_empty | a_mixed | a_nested | c | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---+ +| 2022-01-01 00:00:00.000 | 1 | | [1, 0, null] | [1, 2, null] | [0.1, 0.2, null] | [S1, S2, null] | [null, null, null] | [] | [true, 1, 0.1, S1, null] | [[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null]]]] | 1 | +| 2022-01-01 00:00:00.000 | 1 | | [1, 0, null] | [1, 2, null] | [0.1, 0.2, null] | [S1, S2, null] | [null, null, null] | [] | [true, 1, 0.1, S1, null] | [[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null]]]] | 2 | +| 2022-01-01 00:00:00.000 | 1 | | [1, 0, null] | [1, 2, null] | [0.1, 0.2, null] | [S1, S2, null] | [null, null, null] | [] | [true, 1, 0.1, S1, null] | [[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null]]]] | | +| 2022-02-01 00:00:00.000 | 2 | | [null, 1, 0] | [null, 1, 2] | [null, 0.1, 0.2] | [null, S1, S2] | [null, null, null] | [] | [null, true, 1, 0.1, S1] | [[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"]]]] | 1 | +| 2022-02-01 00:00:00.000 | 2 | | [null, 1, 0] | [null, 1, 2] | [null, 0.1, 0.2] | [null, S1, S2] | [null, null, null] | [] | [null, true, 1, 0.1, S1] | [[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"]]]] | 2 | +| 2022-02-01 00:00:00.000 | 2 | | [null, 1, 0] | [null, 1, 2] | [null, 0.1, 0.2] | [null, S1, S2] | [null, null, null] | [] | [null, true, 1, 0.1, S1] | [[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"]]]] | | +| 2022-03-01 00:00:00.000 | | | [0, null, 1] | [2, null, 1] | [0.2, null, 0.1] | [S2, null, S1] | [null, null, null] | [] | [S1, null, true, 1, 0.1] | [[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1]]]] | 1 | +| 2022-03-01 00:00:00.000 | | | [0, null, 1] | [2, null, 1] | [0.2, null, 0.1] | [S2, null, S1] | [null, null, null] | [] | [S1, null, true, 1, 0.1] | [[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1]]]] | 2 | +| 2022-03-01 00:00:00.000 | | | [0, null, 1] | [2, null, 1] | [0.2, null, 0.1] | [S2, null, S1] | [null, null, null] | [] | [S1, null, true, 1, 0.1] | [[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1]]]] | | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---+ +(9 rows) + +!ok + +{ + "queryType" : "scan", + "dataSource" : { + "type" : "unnest", + "base" : { + "type" : "table", + "name" : "test_unnest" + }, + "virtualColumn" : { + "type" : "expression", + "name" : "j0.unnest", + "expression" : "\"a_int\"", + "outputType" : "ARRAY" + }, + "unnestFilter" : null + }, + "intervals" : { + "type" : "intervals", + "intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ] + }, + "resultFormat" : "compactedList", + "columns" : [ "__time", "s_int", "s_null", "a_bool", "a_int", "a_float", "a_str", "a_null", "a_empty", "a_mixed", "a_nested", "j0.unnest" ], + "columnTypes" : [ "LONG", "LONG", "STRING", "ARRAY", "ARRAY", "ARRAY", "ARRAY", "ARRAY", "ARRAY", "ARRAY", "COMPLEX", "LONG" ], + "granularity" : { + "type" : "all" + }, + "legacy" : false +} +!nativePlan + +#------------------------------------------------------------------------- +# TESTCASE: test_explain TEST_ID: A1_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- + +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +{ + "queryType" : "groupBy", + "dataSource" : { + "type" : "unnest", + "base" : { + "type" : "table", + "name" : "test_unnest" + }, + "virtualColumn" : { + "type" : "expression", + "name" : "j0.unnest", + "expression" : "\"a_int\"", + "outputType" : "ARRAY" + }, + "unnestFilter" : null + }, + "intervals" : { + "type" : "intervals", + "intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ] + }, + "granularity" : { + "type" : "all" + }, + "dimensions" : [ { + "type" : "default", + "dimension" : "j0.unnest", + "outputName" : "d0", + "outputType" : "LONG" + } ], + "aggregations" : [ { + "type" : "count", + "name" : "a0" + } ], + "limitSpec" : { + "type" : "NoopLimitSpec" + } +} +!nativePlan + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(a_bool) AS u(c); ++-----+ +| cnt | ++-----+ +| 6 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A1_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(a_bool) AS u(c); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(a_int) AS u(c); ++-----+ +| cnt | ++-----+ +| 6 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A2_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(a_int) AS u(c); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(a_float) AS u(c); ++-----+ +| cnt | ++-----+ +| 6 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A3_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(a_float) AS u(c); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(a_str) AS u(c); ++-----+ +| cnt | ++-----+ +| 6 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A4_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(a_str) AS u(c); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c); ++-----+ +| cnt | ++-----+ +| 15 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c); ++-----+ +| cnt | ++-----+ +| 12 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A5_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c); ++-----+ +| cnt | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 6 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A6_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 6 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A7_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A8_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A8_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 6 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A8_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A9_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A9_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 6 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A9_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A10_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A10_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A10_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A11_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A11_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A11_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A12_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 15 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A12_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 12 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A12_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c); ++-----+ +| cnt | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY c; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY c; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY c; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c); ++-------+ +| c | ++-------+ +| false | +| true | +| | ++-------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY c; ++-------+ +| c | ++-------+ +| false | +| true | +| | ++-------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A8_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A8_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY c; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A9_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A9_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A10_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A10_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A11_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A11_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A12_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A12_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u1(c1), + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u2(c2); ++-------+-------+ +| c1 | c2 | ++-------+-------+ +| false | false | +| false | false | +| false | false | +| false | true | +| false | true | +| false | true | +| false | | +| false | | +| false | | +| true | false | +| true | false | +| true | false | +| true | true | +| true | true | +| true | true | +| true | | +| true | | +| true | | +| | false | +| | false | +| | false | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++-------+-------+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u1(c1), + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2); ++-------+----+ +| c1 | c2 | ++-------+----+ +| false | 1 | +| false | 1 | +| false | 1 | +| false | 2 | +| false | 2 | +| false | 2 | +| false | | +| false | | +| false | | +| true | 1 | +| true | 1 | +| true | 1 | +| true | 2 | +| true | 2 | +| true | 2 | +| true | | +| true | | +| true | | +| | 1 | +| | 1 | +| | 1 | +| | 2 | +| | 2 | +| | 2 | +| | | +| | | +| | | ++-------+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u1(c1), + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u2(c2); ++-------+-----+ +| c1 | c2 | ++-------+-----+ +| false | 0.1 | +| false | 0.1 | +| false | 0.1 | +| false | 0.2 | +| false | 0.2 | +| false | 0.2 | +| false | | +| false | | +| false | | +| true | 0.1 | +| true | 0.1 | +| true | 0.1 | +| true | 0.2 | +| true | 0.2 | +| true | 0.2 | +| true | | +| true | | +| true | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | | +| | | +| | | ++-------+-----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u1(c1), + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u2(c2); ++-------+----+ +| c1 | c2 | ++-------+----+ +| false | S1 | +| false | S1 | +| false | S1 | +| false | S2 | +| false | S2 | +| false | S2 | +| false | | +| false | | +| false | | +| true | S1 | +| true | S1 | +| true | S1 | +| true | S2 | +| true | S2 | +| true | S2 | +| true | | +| true | | +| true | | +| | S1 | +| | S1 | +| | S1 | +| | S2 | +| | S2 | +| | S2 | +| | | +| | | +| | | ++-------+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u1(c1), + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u2(c2); ++-------+----+ +| c1 | c2 | ++-------+----+ +| false | | +| false | | +| false | | +| false | | +| false | | +| false | | +| false | | +| false | | +| false | | +| true | | +| true | | +| true | | +| true | | +| true | | +| true | | +| true | | +| true | | +| true | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++-------+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B11_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u1(c1), + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B12_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u1(c1), + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u2(c2); ++-------+------+ +| c1 | c2 | ++-------+------+ +| false | 0.1 | +| false | 0.1 | +| false | 0.1 | +| false | 1 | +| false | 1 | +| false | 1 | +| false | S1 | +| false | S1 | +| false | S1 | +| false | true | +| false | true | +| false | true | +| false | | +| false | | +| false | | +| true | 0.1 | +| true | 0.1 | +| true | 0.1 | +| true | 1 | +| true | 1 | +| true | 1 | +| true | S1 | +| true | S1 | +| true | S1 | +| true | true | +| true | true | +| true | true | +| true | | +| true | | +| true | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 1 | +| | 1 | +| | 1 | +| | S1 | +| | S1 | +| | S1 | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++-------+------+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1), + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u2(c2); ++----+-------+ +| c1 | c2 | ++----+-------+ +| 1 | false | +| 1 | false | +| 1 | false | +| 1 | true | +| 1 | true | +| 1 | true | +| 1 | | +| 1 | | +| 1 | | +| 2 | false | +| 2 | false | +| 2 | false | +| 2 | true | +| 2 | true | +| 2 | true | +| 2 | | +| 2 | | +| 2 | | +| | false | +| | false | +| | false | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++----+-------+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1), + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| | 1 | +| | 1 | +| | 1 | +| | 2 | +| | 2 | +| | 2 | +| | | +| | | +| | | ++----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1), + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u2(c2); ++----+-----+ +| c1 | c2 | ++----+-----+ +| 1 | 0.1 | +| 1 | 0.1 | +| 1 | 0.1 | +| 1 | 0.2 | +| 1 | 0.2 | +| 1 | 0.2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 0.1 | +| 2 | 0.1 | +| 2 | 0.1 | +| 2 | 0.2 | +| 2 | 0.2 | +| 2 | 0.2 | +| 2 | | +| 2 | | +| 2 | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | | +| | | +| | | ++----+-----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1), + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ +| 1 | S1 | +| 1 | S1 | +| 1 | S1 | +| 1 | S2 | +| 1 | S2 | +| 1 | S2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | S1 | +| 2 | S1 | +| 2 | S1 | +| 2 | S2 | +| 2 | S2 | +| 2 | S2 | +| 2 | | +| 2 | | +| 2 | | +| | S1 | +| | S1 | +| | S1 | +| | S2 | +| | S2 | +| | S2 | +| | | +| | | +| | | ++----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1), + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B11_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1), + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B12_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1), + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u2(c2); ++----+------+ +| c1 | c2 | ++----+------+ +| 1 | 0.1 | +| 1 | 0.1 | +| 1 | 0.1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | S1 | +| 1 | S1 | +| 1 | S1 | +| 1 | true | +| 1 | true | +| 1 | true | +| 1 | | +| 1 | | +| 1 | | +| 2 | 0.1 | +| 2 | 0.1 | +| 2 | 0.1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | S1 | +| 2 | S1 | +| 2 | S1 | +| 2 | true | +| 2 | true | +| 2 | true | +| 2 | | +| 2 | | +| 2 | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 1 | +| | 1 | +| | 1 | +| | S1 | +| | S1 | +| | S1 | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++----+------+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A8_B6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u1(c1), + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u2(c2); ++-----+-------+ +| c1 | c2 | ++-----+-------+ +| 0.1 | false | +| 0.1 | false | +| 0.1 | false | +| 0.1 | true | +| 0.1 | true | +| 0.1 | true | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.2 | false | +| 0.2 | false | +| 0.2 | false | +| 0.2 | true | +| 0.2 | true | +| 0.2 | true | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| | false | +| | false | +| | false | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++-----+-------+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A8_B7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u1(c1), + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2); ++-----+----+ +| c1 | c2 | ++-----+----+ +| 0.1 | 1 | +| 0.1 | 1 | +| 0.1 | 1 | +| 0.1 | 2 | +| 0.1 | 2 | +| 0.1 | 2 | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.2 | 1 | +| 0.2 | 1 | +| 0.2 | 1 | +| 0.2 | 2 | +| 0.2 | 2 | +| 0.2 | 2 | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| | 1 | +| | 1 | +| | 1 | +| | 2 | +| | 2 | +| | 2 | +| | | +| | | +| | | ++-----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A8_B8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u1(c1), + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u2(c2); ++-----+-----+ +| c1 | c2 | ++-----+-----+ +| 0.1 | 0.1 | +| 0.1 | 0.1 | +| 0.1 | 0.1 | +| 0.1 | 0.2 | +| 0.1 | 0.2 | +| 0.1 | 0.2 | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.2 | 0.1 | +| 0.2 | 0.1 | +| 0.2 | 0.1 | +| 0.2 | 0.2 | +| 0.2 | 0.2 | +| 0.2 | 0.2 | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | | +| | | +| | | ++-----+-----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A8_B9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u1(c1), + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u2(c2); ++-----+----+ +| c1 | c2 | ++-----+----+ +| 0.1 | S1 | +| 0.1 | S1 | +| 0.1 | S1 | +| 0.1 | S2 | +| 0.1 | S2 | +| 0.1 | S2 | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.2 | S1 | +| 0.2 | S1 | +| 0.2 | S1 | +| 0.2 | S2 | +| 0.2 | S2 | +| 0.2 | S2 | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| | S1 | +| | S1 | +| | S1 | +| | S2 | +| | S2 | +| | S2 | +| | | +| | | +| | | ++-----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A8_B10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u1(c1), + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u2(c2); ++-----+----+ +| c1 | c2 | ++-----+----+ +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++-----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A8_B11_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u1(c1), + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A8_B12_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u1(c1), + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u2(c2); ++-----+------+ +| c1 | c2 | ++-----+------+ +| 0.1 | 0.1 | +| 0.1 | 0.1 | +| 0.1 | 0.1 | +| 0.1 | 1 | +| 0.1 | 1 | +| 0.1 | 1 | +| 0.1 | S1 | +| 0.1 | S1 | +| 0.1 | S1 | +| 0.1 | true | +| 0.1 | true | +| 0.1 | true | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.2 | 0.1 | +| 0.2 | 0.1 | +| 0.2 | 0.1 | +| 0.2 | 1 | +| 0.2 | 1 | +| 0.2 | 1 | +| 0.2 | S1 | +| 0.2 | S1 | +| 0.2 | S1 | +| 0.2 | true | +| 0.2 | true | +| 0.2 | true | +| 0.2 | | +| 0.2 | | +| 0.2 | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 1 | +| | 1 | +| | 1 | +| | S1 | +| | S1 | +| | S1 | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++-----+------+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A9_B6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u2(c2); ++----+-------+ +| c1 | c2 | ++----+-------+ +| S1 | false | +| S1 | false | +| S1 | false | +| S1 | true | +| S1 | true | +| S1 | true | +| S1 | | +| S1 | | +| S1 | | +| S2 | false | +| S2 | false | +| S2 | false | +| S2 | true | +| S2 | true | +| S2 | true | +| S2 | | +| S2 | | +| S2 | | +| | false | +| | false | +| | false | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++----+-------+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A9_B7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ +| S1 | 1 | +| S1 | 1 | +| S1 | 1 | +| S1 | 2 | +| S1 | 2 | +| S1 | 2 | +| S1 | | +| S1 | | +| S1 | | +| S2 | 1 | +| S2 | 1 | +| S2 | 1 | +| S2 | 2 | +| S2 | 2 | +| S2 | 2 | +| S2 | | +| S2 | | +| S2 | | +| | 1 | +| | 1 | +| | 1 | +| | 2 | +| | 2 | +| | 2 | +| | | +| | | +| | | ++----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A9_B8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u2(c2); ++----+-----+ +| c1 | c2 | ++----+-----+ +| S1 | 0.1 | +| S1 | 0.1 | +| S1 | 0.1 | +| S1 | 0.2 | +| S1 | 0.2 | +| S1 | 0.2 | +| S1 | | +| S1 | | +| S1 | | +| S2 | 0.1 | +| S2 | 0.1 | +| S2 | 0.1 | +| S2 | 0.2 | +| S2 | 0.2 | +| S2 | 0.2 | +| S2 | | +| S2 | | +| S2 | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | | +| | | +| | | ++----+-----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A9_B9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ +| S1 | S1 | +| S1 | S1 | +| S1 | S1 | +| S1 | S2 | +| S1 | S2 | +| S1 | S2 | +| S1 | | +| S1 | | +| S1 | | +| S2 | S1 | +| S2 | S1 | +| S2 | S1 | +| S2 | S2 | +| S2 | S2 | +| S2 | S2 | +| S2 | | +| S2 | | +| S2 | | +| | S1 | +| | S1 | +| | S1 | +| | S2 | +| | S2 | +| | S2 | +| | | +| | | +| | | ++----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A9_B10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S2 | | +| S2 | | +| S2 | | +| S2 | | +| S2 | | +| S2 | | +| S2 | | +| S2 | | +| S2 | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A9_B11_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A9_B12_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u2(c2); ++----+------+ +| c1 | c2 | ++----+------+ +| S1 | 0.1 | +| S1 | 0.1 | +| S1 | 0.1 | +| S1 | 1 | +| S1 | 1 | +| S1 | 1 | +| S1 | S1 | +| S1 | S1 | +| S1 | S1 | +| S1 | true | +| S1 | true | +| S1 | true | +| S1 | | +| S1 | | +| S1 | | +| S2 | 0.1 | +| S2 | 0.1 | +| S2 | 0.1 | +| S2 | 1 | +| S2 | 1 | +| S2 | 1 | +| S2 | S1 | +| S2 | S1 | +| S2 | S1 | +| S2 | true | +| S2 | true | +| S2 | true | +| S2 | | +| S2 | | +| S2 | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 1 | +| | 1 | +| | 1 | +| | S1 | +| | S1 | +| | S1 | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++----+------+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A10_B6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u2(c2); ++----+-------+ +| c1 | c2 | ++----+-------+ +| | false | +| | false | +| | false | +| | false | +| | false | +| | false | +| | false | +| | false | +| | false | +| | true | +| | true | +| | true | +| | true | +| | true | +| | true | +| | true | +| | true | +| | true | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++----+-------+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A10_B7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 2 | +| | 2 | +| | 2 | +| | 2 | +| | 2 | +| | 2 | +| | 2 | +| | 2 | +| | 2 | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A10_B8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u2(c2); ++----+-----+ +| c1 | c2 | ++----+-----+ +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++----+-----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A10_B9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S2 | +| | S2 | +| | S2 | +| | S2 | +| | S2 | +| | S2 | +| | S2 | +| | S2 | +| | S2 | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A10_B10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++----+----+ +(27 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A10_B11_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A10_B12_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u2(c2); ++----+------+ +| c1 | c2 | ++----+------+ +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | 1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | S1 | +| | true | +| | true | +| | true | +| | true | +| | true | +| | true | +| | true | +| | true | +| | true | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++----+------+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A11_B6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A11_B7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A11_B8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A11_B9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A11_B10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A11_B11_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A11_B12_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A12_B6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u2(c2); ++------+-------+ +| c1 | c2 | ++------+-------+ +| 0.1 | false | +| 0.1 | false | +| 0.1 | false | +| 0.1 | true | +| 0.1 | true | +| 0.1 | true | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 1 | false | +| 1 | false | +| 1 | false | +| 1 | true | +| 1 | true | +| 1 | true | +| 1 | | +| 1 | | +| 1 | | +| S1 | false | +| S1 | false | +| S1 | false | +| S1 | true | +| S1 | true | +| S1 | true | +| S1 | | +| S1 | | +| S1 | | +| true | false | +| true | false | +| true | false | +| true | true | +| true | true | +| true | true | +| true | | +| true | | +| true | | +| | false | +| | false | +| | false | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++------+-------+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A12_B7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2); ++------+----+ +| c1 | c2 | ++------+----+ +| 0.1 | 1 | +| 0.1 | 1 | +| 0.1 | 1 | +| 0.1 | 2 | +| 0.1 | 2 | +| 0.1 | 2 | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| S1 | 1 | +| S1 | 1 | +| S1 | 1 | +| S1 | 2 | +| S1 | 2 | +| S1 | 2 | +| S1 | | +| S1 | | +| S1 | | +| true | 1 | +| true | 1 | +| true | 1 | +| true | 2 | +| true | 2 | +| true | 2 | +| true | | +| true | | +| true | | +| | 1 | +| | 1 | +| | 1 | +| | 2 | +| | 2 | +| | 2 | +| | | +| | | +| | | ++------+----+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A12_B8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u2(c2); ++------+-----+ +| c1 | c2 | ++------+-----+ +| 0.1 | 0.1 | +| 0.1 | 0.1 | +| 0.1 | 0.1 | +| 0.1 | 0.2 | +| 0.1 | 0.2 | +| 0.1 | 0.2 | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 1 | 0.1 | +| 1 | 0.1 | +| 1 | 0.1 | +| 1 | 0.2 | +| 1 | 0.2 | +| 1 | 0.2 | +| 1 | | +| 1 | | +| 1 | | +| S1 | 0.1 | +| S1 | 0.1 | +| S1 | 0.1 | +| S1 | 0.2 | +| S1 | 0.2 | +| S1 | 0.2 | +| S1 | | +| S1 | | +| S1 | | +| true | 0.1 | +| true | 0.1 | +| true | 0.1 | +| true | 0.2 | +| true | 0.2 | +| true | 0.2 | +| true | | +| true | | +| true | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 0.2 | +| | 0.2 | +| | 0.2 | +| | | +| | | +| | | ++------+-----+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A12_B9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u2(c2); ++------+----+ +| c1 | c2 | ++------+----+ +| 0.1 | S1 | +| 0.1 | S1 | +| 0.1 | S1 | +| 0.1 | S2 | +| 0.1 | S2 | +| 0.1 | S2 | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 1 | S1 | +| 1 | S1 | +| 1 | S1 | +| 1 | S2 | +| 1 | S2 | +| 1 | S2 | +| 1 | | +| 1 | | +| 1 | | +| S1 | S1 | +| S1 | S1 | +| S1 | S1 | +| S1 | S2 | +| S1 | S2 | +| S1 | S2 | +| S1 | | +| S1 | | +| S1 | | +| true | S1 | +| true | S1 | +| true | S1 | +| true | S2 | +| true | S2 | +| true | S2 | +| true | | +| true | | +| true | | +| | S1 | +| | S1 | +| | S1 | +| | S2 | +| | S2 | +| | S2 | +| | | +| | | +| | | ++------+----+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A12_B10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u2(c2); ++------+----+ +| c1 | c2 | ++------+----+ +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| S1 | | +| true | | +| true | | +| true | | +| true | | +| true | | +| true | | +| true | | +| true | | +| true | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++------+----+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A12_B11_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u2(c2); ++----+----+ +| c1 | c2 | ++----+----+ ++----+----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A12_B12_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c1, + c2 +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u1(c1), + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u2(c2); ++------+------+ +| c1 | c2 | ++------+------+ +| 0.1 | 0.1 | +| 0.1 | 0.1 | +| 0.1 | 0.1 | +| 0.1 | 1 | +| 0.1 | 1 | +| 0.1 | 1 | +| 0.1 | S1 | +| 0.1 | S1 | +| 0.1 | S1 | +| 0.1 | true | +| 0.1 | true | +| 0.1 | true | +| 0.1 | | +| 0.1 | | +| 0.1 | | +| 1 | 0.1 | +| 1 | 0.1 | +| 1 | 0.1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | S1 | +| 1 | S1 | +| 1 | S1 | +| 1 | true | +| 1 | true | +| 1 | true | +| 1 | | +| 1 | | +| 1 | | +| S1 | 0.1 | +| S1 | 0.1 | +| S1 | 0.1 | +| S1 | 1 | +| S1 | 1 | +| S1 | 1 | +| S1 | S1 | +| S1 | S1 | +| S1 | S1 | +| S1 | true | +| S1 | true | +| S1 | true | +| S1 | | +| S1 | | +| S1 | | +| true | 0.1 | +| true | 0.1 | +| true | 0.1 | +| true | 1 | +| true | 1 | +| true | 1 | +| true | S1 | +| true | S1 | +| true | S1 | +| true | true | +| true | true | +| true | true | +| true | | +| true | | +| true | | +| | 0.1 | +| | 0.1 | +| | 0.1 | +| | 1 | +| | 1 | +| | 1 | +| | S1 | +| | S1 | +| | S1 | +| | true | +| | true | +| | true | +| | | +| | | +| | | ++------+------+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ +| 0 | 3 | +| 1 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY s_int, + c; ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | 0 | 1 | +| 1 | 1 | 1 | +| 1 | | 1 | +| 2 | 0 | 1 | +| 2 | 1 | 1 | +| 2 | | 1 | +| | 0 | 1 | +| | 1 | 1 | +| | | 1 | ++-------+---+-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY GROUPING +SETS (c); ++---+-----+ +| c | cnt | ++---+-----+ +| 0 | 3 | +| 1 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | 0 | 3 | +| | 1 | 3 | +| | | 3 | +| | | 3 | ++-------+---+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY rollup(c); ++---+-----+ +| c | cnt | ++---+-----+ +| 0 | 3 | +| 1 | 3 | +| | 3 | +| | 9 | ++---+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY rollup(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | 0 | 1 | +| 1 | 1 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 0 | 1 | +| 2 | 1 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 0 | 1 | +| | 1 | 1 | +| | | 1 | +| | | 3 | +| | | 9 | ++-------+---+-----+ +(13 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY cube(c); ++---+-----+ +| c | cnt | ++---+-----+ +| 0 | 3 | +| 1 | 3 | +| | 3 | +| | 9 | ++---+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY cube(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | 0 | 1 | +| 1 | 1 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 0 | 1 | +| 2 | 1 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 0 | 1 | +| | 0 | 3 | +| | 1 | 1 | +| | 1 | 3 | +| | | 1 | +| | | 3 | +| | | 3 | +| | | 9 | ++-------+---+-----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY c +HAVING c = 0; ++---+-----+ +| c | cnt | ++---+-----+ +| 0 | 3 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY c; ++-------+-----+ +| c | cnt | ++-------+-----+ +| false | 3 | +| true | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY s_int, + c; ++-------+-------+-----+ +| s_int | c | cnt | ++-------+-------+-----+ +| 1 | false | 1 | +| 1 | true | 1 | +| 1 | | 1 | +| 2 | false | 1 | +| 2 | true | 1 | +| 2 | | 1 | +| | false | 1 | +| | true | 1 | +| | | 1 | ++-------+-------+-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY GROUPING +SETS (c); ++-------+-----+ +| c | cnt | ++-------+-----+ +| false | 3 | +| true | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+-------+-----+ +| s_int | c | cnt | ++-------+-------+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | false | 3 | +| | true | 3 | +| | | 3 | +| | | 3 | ++-------+-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY rollup(c); ++-------+-----+ +| c | cnt | ++-------+-----+ +| false | 3 | +| true | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY rollup(s_int, c); ++-------+-------+-----+ +| s_int | c | cnt | ++-------+-------+-----+ +| 1 | false | 1 | +| 1 | true | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | false | 1 | +| 2 | true | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | false | 1 | +| | true | 1 | +| | | 1 | +| | | 3 | +| | | 9 | ++-------+-------+-----+ +(13 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY cube(c); ++-------+-----+ +| c | cnt | ++-------+-----+ +| false | 3 | +| true | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY cube(s_int, c); ++-------+-------+-----+ +| s_int | c | cnt | ++-------+-------+-----+ +| 1 | false | 1 | +| 1 | true | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | false | 1 | +| 2 | true | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | false | 1 | +| | false | 3 | +| | true | 1 | +| | true | 3 | +| | | 1 | +| | | 3 | +| | | 3 | +| | | 9 | ++-------+-------+-----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY c +HAVING c IS FALSE; ++-------+-----+ +| c | cnt | ++-------+-----+ +| false | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY s_int, + c; ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | 1 | 1 | +| 1 | 2 | 1 | +| 1 | | 1 | +| 2 | 1 | 1 | +| 2 | 2 | 1 | +| 2 | | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | | 1 | ++-------+---+-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY GROUPING +SETS (c); ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | 1 | 3 | +| | 2 | 3 | +| | | 3 | +| | | 3 | ++-------+---+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY rollup(c); ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++---+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY rollup(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | 1 | 1 | +| 1 | 2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 1 | 1 | +| 2 | 2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 1 | 1 | +| | 2 | 1 | +| | | 1 | +| | | 3 | +| | | 9 | ++-------+---+-----+ +(13 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY cube(c); ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++---+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY cube(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | 1 | 1 | +| 1 | 2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 1 | 1 | +| 2 | 2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 1 | 1 | +| | 1 | 3 | +| | 2 | 1 | +| | 2 | 3 | +| | | 1 | +| | | 3 | +| | | 3 | +| | | 9 | ++-------+---+-----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c +HAVING c = 1; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY s_int, + c; ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | 1 | 1 | +| 1 | 2 | 1 | +| 1 | | 1 | +| 2 | 1 | 1 | +| 2 | 2 | 1 | +| 2 | | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | | 1 | ++-------+---+-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY GROUPING +SETS (c); ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | 1 | 3 | +| | 2 | 3 | +| | | 3 | +| | | 3 | ++-------+---+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY rollup(c); ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++---+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY rollup(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | 1 | 1 | +| 1 | 2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 1 | 1 | +| 2 | 2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 1 | 1 | +| | 2 | 1 | +| | | 1 | +| | | 3 | +| | | 9 | ++-------+---+-----+ +(13 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY cube(c); ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++---+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY cube(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | 1 | 1 | +| 1 | 2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 1 | 1 | +| 2 | 2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 1 | 1 | +| | 1 | 3 | +| | 2 | 1 | +| | 2 | 3 | +| | | 1 | +| | | 3 | +| | | 3 | +| | | 9 | ++-------+---+-----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY c +HAVING c = 1; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY c; ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | +| 0.2 | 3 | +| | 3 | ++-----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY s_int, + c; ++-------+-----+-----+ +| s_int | c | cnt | ++-------+-----+-----+ +| 1 | 0.1 | 1 | +| 1 | 0.2 | 1 | +| 1 | | 1 | +| 2 | 0.1 | 1 | +| 2 | 0.2 | 1 | +| 2 | | 1 | +| | 0.1 | 1 | +| | 0.2 | 1 | +| | | 1 | ++-------+-----+-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY GROUPING +SETS (c); ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | +| 0.2 | 3 | +| | 3 | ++-----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+-----+-----+ +| s_int | c | cnt | ++-------+-----+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | 0.1 | 3 | +| | 0.2 | 3 | +| | | 3 | +| | | 3 | ++-------+-----+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY rollup(c); ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | +| 0.2 | 3 | +| | 3 | +| | 9 | ++-----+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY rollup(s_int, c); ++-------+-----+-----+ +| s_int | c | cnt | ++-------+-----+-----+ +| 1 | 0.1 | 1 | +| 1 | 0.2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 0.1 | 1 | +| 2 | 0.2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 0.1 | 1 | +| | 0.2 | 1 | +| | | 1 | +| | | 3 | +| | | 9 | ++-------+-----+-----+ +(13 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY cube(c); ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | +| 0.2 | 3 | +| | 3 | +| | 9 | ++-----+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY cube(s_int, c); ++-------+-----+-----+ +| s_int | c | cnt | ++-------+-----+-----+ +| 1 | 0.1 | 1 | +| 1 | 0.2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 0.1 | 1 | +| 2 | 0.2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 0.1 | 1 | +| | 0.1 | 3 | +| | 0.2 | 1 | +| | 0.2 | 3 | +| | | 1 | +| | | 3 | +| | | 3 | +| | | 9 | ++-------+-----+-----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY c +HAVING c = 0.1; ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | ++-----+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY c; ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | +| 0.2 | 3 | +| | 3 | ++-----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY s_int, + c; ++-------+-----+-----+ +| s_int | c | cnt | ++-------+-----+-----+ +| 1 | 0.1 | 1 | +| 1 | 0.2 | 1 | +| 1 | | 1 | +| 2 | 0.1 | 1 | +| 2 | 0.2 | 1 | +| 2 | | 1 | +| | 0.1 | 1 | +| | 0.2 | 1 | +| | | 1 | ++-------+-----+-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY GROUPING +SETS (c); ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | +| 0.2 | 3 | +| | 3 | ++-----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+-----+-----+ +| s_int | c | cnt | ++-------+-----+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | 0.1 | 3 | +| | 0.2 | 3 | +| | | 3 | +| | | 3 | ++-------+-----+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY rollup(c); ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | +| 0.2 | 3 | +| | 3 | +| | 9 | ++-----+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY rollup(s_int, c); ++-------+-----+-----+ +| s_int | c | cnt | ++-------+-----+-----+ +| 1 | 0.1 | 1 | +| 1 | 0.2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 0.1 | 1 | +| 2 | 0.2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 0.1 | 1 | +| | 0.2 | 1 | +| | | 1 | +| | | 3 | +| | | 9 | ++-------+-----+-----+ +(13 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY cube(c); ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | +| 0.2 | 3 | +| | 3 | +| | 9 | ++-----+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY cube(s_int, c); ++-------+-----+-----+ +| s_int | c | cnt | ++-------+-----+-----+ +| 1 | 0.1 | 1 | +| 1 | 0.2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | 0.1 | 1 | +| 2 | 0.2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | 0.1 | 1 | +| | 0.1 | 3 | +| | 0.2 | 1 | +| | 0.2 | 3 | +| | | 1 | +| | | 3 | +| | | 3 | +| | | 9 | ++-------+-----+-----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY c +HAVING c = 0.1; ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.1 | 3 | ++-----+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY c; ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | +| S2 | 3 | +| | 3 | ++----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY s_int, + c; ++-------+----+-----+ +| s_int | c | cnt | ++-------+----+-----+ +| 1 | S1 | 1 | +| 1 | S2 | 1 | +| 1 | | 1 | +| 2 | S1 | 1 | +| 2 | S2 | 1 | +| 2 | | 1 | +| | S1 | 1 | +| | S2 | 1 | +| | | 1 | ++-------+----+-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY GROUPING +SETS (c); ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | +| S2 | 3 | +| | 3 | ++----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+----+-----+ +| s_int | c | cnt | ++-------+----+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | S1 | 3 | +| | S2 | 3 | +| | | 3 | +| | | 3 | ++-------+----+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY rollup(c); ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | +| S2 | 3 | +| | 3 | +| | 9 | ++----+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY rollup(s_int, c); ++-------+----+-----+ +| s_int | c | cnt | ++-------+----+-----+ +| 1 | S1 | 1 | +| 1 | S2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | S1 | 1 | +| 2 | S2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | S1 | 1 | +| | S2 | 1 | +| | | 1 | +| | | 3 | +| | | 9 | ++-------+----+-----+ +(13 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY cube(c); ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | +| S2 | 3 | +| | 3 | +| | 9 | ++----+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY cube(s_int, c); ++-------+----+-----+ +| s_int | c | cnt | ++-------+----+-----+ +| 1 | S1 | 1 | +| 1 | S2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | S1 | 1 | +| 2 | S2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | S1 | 1 | +| | S1 | 3 | +| | S2 | 1 | +| | S2 | 3 | +| | | 1 | +| | | 3 | +| | | 3 | +| | | 9 | ++-------+----+-----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY c +HAVING c = 'S1'; ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | ++----+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | +| S2 | 3 | +| | 3 | ++----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY s_int, + c; ++-------+----+-----+ +| s_int | c | cnt | ++-------+----+-----+ +| 1 | S1 | 1 | +| 1 | S2 | 1 | +| 1 | | 1 | +| 2 | S1 | 1 | +| 2 | S2 | 1 | +| 2 | | 1 | +| | S1 | 1 | +| | S2 | 1 | +| | | 1 | ++-------+----+-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (c); ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | +| S2 | 3 | +| | 3 | ++----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+----+-----+ +| s_int | c | cnt | ++-------+----+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | S1 | 3 | +| | S2 | 3 | +| | | 3 | +| | | 3 | ++-------+----+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(c); ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | +| S2 | 3 | +| | 3 | +| | 9 | ++----+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(s_int, c); ++-------+----+-----+ +| s_int | c | cnt | ++-------+----+-----+ +| 1 | S1 | 1 | +| 1 | S2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | S1 | 1 | +| 2 | S2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | S1 | 1 | +| | S2 | 1 | +| | | 1 | +| | | 3 | +| | | 9 | ++-------+----+-----+ +(13 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY cube(c); ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | +| S2 | 3 | +| | 3 | +| | 9 | ++----+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY cube(s_int, c); ++-------+----+-----+ +| s_int | c | cnt | ++-------+----+-----+ +| 1 | S1 | 1 | +| 1 | S2 | 1 | +| 1 | | 1 | +| 1 | | 3 | +| 2 | S1 | 1 | +| 2 | S2 | 1 | +| 2 | | 1 | +| 2 | | 3 | +| | S1 | 1 | +| | S1 | 3 | +| | S2 | 1 | +| | S2 | 3 | +| | | 1 | +| | | 3 | +| | | 3 | +| | | 9 | ++-------+----+-----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY c +HAVING c = 'S1'; ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | ++----+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A8_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY c; ++------+-----+ +| c | cnt | ++------+-----+ +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | +| | 3 | ++------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY s_int, + c; ++-------+------+-----+ +| s_int | c | cnt | ++-------+------+-----+ +| 1 | 0.1 | 1 | +| 1 | 1 | 1 | +| 1 | S1 | 1 | +| 1 | true | 1 | +| 1 | | 1 | +| 2 | 0.1 | 1 | +| 2 | 1 | 1 | +| 2 | S1 | 1 | +| 2 | true | 1 | +| 2 | | 1 | +| | 0.1 | 1 | +| | 1 | 1 | +| | S1 | 1 | +| | true | 1 | +| | | 1 | ++-------+------+-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | +| 2 | 5 | +| | 5 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY GROUPING +SETS (c); ++------+-----+ +| c | cnt | ++------+-----+ +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | +| | 3 | ++------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+------+-----+ +| s_int | c | cnt | ++-------+------+-----+ +| 1 | | 5 | +| 2 | | 5 | +| | 0.1 | 3 | +| | 1 | 3 | +| | S1 | 3 | +| | true | 3 | +| | | 3 | +| | | 5 | ++-------+------+-----+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | +| 2 | 5 | +| | 5 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY rollup(c); ++------+-----+ +| c | cnt | ++------+-----+ +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | +| | 15 | +| | 3 | ++------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY rollup(s_int, c); ++-------+------+-----+ +| s_int | c | cnt | ++-------+------+-----+ +| 1 | 0.1 | 1 | +| 1 | 1 | 1 | +| 1 | S1 | 1 | +| 1 | true | 1 | +| 1 | | 1 | +| 1 | | 5 | +| 2 | 0.1 | 1 | +| 2 | 1 | 1 | +| 2 | S1 | 1 | +| 2 | true | 1 | +| 2 | | 1 | +| 2 | | 5 | +| | 0.1 | 1 | +| | 1 | 1 | +| | S1 | 1 | +| | true | 1 | +| | | 1 | +| | | 15 | +| | | 5 | ++-------+------+-----+ +(19 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | +| 2 | 5 | +| | 15 | +| | 5 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY cube(c); ++------+-----+ +| c | cnt | ++------+-----+ +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | +| | 15 | +| | 3 | ++------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY cube(s_int, c); ++-------+------+-----+ +| s_int | c | cnt | ++-------+------+-----+ +| 1 | 0.1 | 1 | +| 1 | 1 | 1 | +| 1 | S1 | 1 | +| 1 | true | 1 | +| 1 | | 1 | +| 1 | | 5 | +| 2 | 0.1 | 1 | +| 2 | 1 | 1 | +| 2 | S1 | 1 | +| 2 | true | 1 | +| 2 | | 1 | +| 2 | | 5 | +| | 0.1 | 1 | +| | 0.1 | 3 | +| | 1 | 1 | +| | 1 | 3 | +| | S1 | 1 | +| | S1 | 3 | +| | true | 1 | +| | true | 3 | +| | | 1 | +| | | 15 | +| | | 3 | +| | | 5 | ++-------+------+-----+ +(24 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | +| 2 | 5 | +| | 15 | +| | 5 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY c +HAVING c = 'S1'; ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | ++----+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A9_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++------+-----+ +| c | cnt | ++------+-----+ +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | +| | 3 | ++------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY s_int, + c; ++-------+------+-----+ +| s_int | c | cnt | ++-------+------+-----+ +| 1 | 0.1 | 1 | +| 1 | 1 | 1 | +| 1 | S1 | 1 | +| 1 | true | 1 | +| 1 | | 1 | +| 2 | 0.1 | 1 | +| 2 | 1 | 1 | +| 2 | S1 | 1 | +| 2 | true | 1 | +| 2 | | 1 | +| | 0.1 | 1 | +| | 1 | 1 | +| | S1 | 1 | +| | true | 1 | +| | | 1 | ++-------+------+-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | +| 2 | 5 | +| | 5 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (c); ++------+-----+ +| c | cnt | ++------+-----+ +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | +| | 3 | ++------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+------+-----+ +| s_int | c | cnt | ++-------+------+-----+ +| 1 | | 5 | +| 2 | | 5 | +| | 0.1 | 3 | +| | 1 | 3 | +| | S1 | 3 | +| | true | 3 | +| | | 3 | +| | | 5 | ++-------+------+-----+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | +| 2 | 5 | +| | 5 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(c); ++------+-----+ +| c | cnt | ++------+-----+ +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | +| | 15 | +| | 3 | ++------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(s_int, c); ++-------+------+-----+ +| s_int | c | cnt | ++-------+------+-----+ +| 1 | 0.1 | 1 | +| 1 | 1 | 1 | +| 1 | S1 | 1 | +| 1 | true | 1 | +| 1 | | 1 | +| 1 | | 5 | +| 2 | 0.1 | 1 | +| 2 | 1 | 1 | +| 2 | S1 | 1 | +| 2 | true | 1 | +| 2 | | 1 | +| 2 | | 5 | +| | 0.1 | 1 | +| | 1 | 1 | +| | S1 | 1 | +| | true | 1 | +| | | 1 | +| | | 15 | +| | | 5 | ++-------+------+-----+ +(19 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | +| 2 | 5 | +| | 15 | +| | 5 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY cube(c); ++------+-----+ +| c | cnt | ++------+-----+ +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | +| | 15 | +| | 3 | ++------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY cube(s_int, c); ++-------+------+-----+ +| s_int | c | cnt | ++-------+------+-----+ +| 1 | 0.1 | 1 | +| 1 | 1 | 1 | +| 1 | S1 | 1 | +| 1 | true | 1 | +| 1 | | 1 | +| 1 | | 5 | +| 2 | 0.1 | 1 | +| 2 | 1 | 1 | +| 2 | S1 | 1 | +| 2 | true | 1 | +| 2 | | 1 | +| 2 | | 5 | +| | 0.1 | 1 | +| | 0.1 | 3 | +| | 1 | 1 | +| | 1 | 3 | +| | S1 | 1 | +| | S1 | 3 | +| | true | 1 | +| | true | 3 | +| | | 1 | +| | | 15 | +| | | 3 | +| | | 5 | ++-------+------+-----+ +(24 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | +| 2 | 5 | +| | 15 | +| | 5 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY c +HAVING c = 'S1'; ++----+-----+ +| c | cnt | ++----+-----+ +| S1 | 3 | ++----+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A10_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 5 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ +| | 9 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY s_int, + c; ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | | 3 | ++-------+---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 9 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | | 3 | +| 2 | | 3 | +| | | 3 | +| | | 9 | ++-------+---+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 9 | +| | 9 | ++---+-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | | 3 | +| 1 | | 3 | +| 2 | | 3 | +| 2 | | 3 | +| | | 3 | +| | | 3 | +| | | 9 | ++-------+---+-----+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY cube(c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 9 | +| | 9 | ++---+-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY cube(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ +| 1 | | 3 | +| 1 | | 3 | +| 2 | | 3 | +| 2 | | 3 | +| | | 3 | +| | | 3 | +| | | 9 | +| | | 9 | ++-------+---+-----+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | +| 2 | 3 | +| | 3 | +| | 9 | ++-------+-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY c +HAVING c IS NULL; ++---+-----+ +| c | cnt | ++---+-----+ +| | 9 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A11_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 1 | 3 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ ++---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY s_int, + c; ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ ++-------+---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY s_int; ++-------+-----+ +| s_int | cnt | ++-------+-----+ ++-------+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (c); ++---+-----+ +| c | cnt | ++---+-----+ ++---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (s_int, + c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ ++-------+---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY GROUPING +SETS (s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ ++-------+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(c); ++---+-----+ +| c | cnt | ++---+-----+ ++---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ ++-------+---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY rollup(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ ++-------+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY cube(c); ++---+-----+ +| c | cnt | ++---+-----+ ++---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY cube(s_int, c); ++-------+---+-----+ +| s_int | c | cnt | ++-------+---+-----+ ++-------+---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY cube(s_int); ++-------+-----+ +| s_int | cnt | ++-------+-----+ ++-------+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY c +HAVING c = 1; ++---+-----+ +| c | cnt | ++---+-----+ ++---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A12_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +HAVING s_int=1; ++-------+-----+ +| s_int | cnt | ++-------+-----+ ++-------+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY c +ORDER BY c ASC; ++---+-----+ +| c | cnt | ++---+-----+ +| | 3 | +| 0 | 3 | +| 1 | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | +| 0 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_bool) AS u(c) + ORDER BY c ASC); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_bool) AS u(c) + ORDER BY 1 DESC); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-03-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-01-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_bool) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_bool) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_bool) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_bool) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_bool) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_bool) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_bool) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_bool) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_bool) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++-------+-----+ +| c | cnt | ++-------+-----+ +| | 3 | +| false | 3 | +| true | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++-------+-----+ +| c | cnt | ++-------+-----+ +| true | 3 | +| false | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + ORDER BY c ASC); ++-------+ +| c | ++-------+ +| false | +| false | +| false | +| true | +| true | +| true | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| c | ++-------+ +| false | +| false | +| false | +| true | +| true | +| true | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-03-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-01-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c +ORDER BY c ASC; ++---+-----+ +| c | cnt | ++---+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++---+-----+ +| c | cnt | ++---+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_int) AS u(c) + ORDER BY c ASC); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_int) AS u(c) + ORDER BY 1 DESC); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-03-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-01-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_int) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_int) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_int) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_int) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_int) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_int) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_int) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_int) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_int) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++---+-----+ +| c | cnt | ++---+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++---+-----+ +| c | cnt | ++---+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + ORDER BY c ASC); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + ORDER BY 1 DESC); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-03-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-01-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY c +ORDER BY c ASC; ++-----+-----+ +| c | cnt | ++-----+-----+ +| | 3 | +| 0.1 | 3 | +| 0.2 | 3 | ++-----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.2 | 3 | +| 0.1 | 3 | +| | 3 | ++-----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_float) AS u(c) + ORDER BY c ASC); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_float) AS u(c) + ORDER BY 1 DESC); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-03-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-01-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_float) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_float) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_float) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_float) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_float) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_float) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_float) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_float) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_float) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++-----+-----+ +| c | cnt | ++-----+-----+ +| | 3 | +| 0.1 | 3 | +| 0.2 | 3 | ++-----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++-----+-----+ +| c | cnt | ++-----+-----+ +| 0.2 | 3 | +| 0.1 | 3 | +| | 3 | ++-----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + ORDER BY c ASC); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + ORDER BY 1 DESC); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-03-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-01-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY c +ORDER BY c ASC; ++----+-----+ +| c | cnt | ++----+-----+ +| | 3 | +| S1 | 3 | +| S2 | 3 | ++----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++----+-----+ +| c | cnt | ++----+-----+ +| S2 | 3 | +| S1 | 3 | +| | 3 | ++----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_str) AS u(c) + ORDER BY c ASC); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | +| | +| | +| | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_str) AS u(c) + ORDER BY 1 DESC); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | +| | +| | +| | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-03-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-01-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_str) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_str) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_str) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_str) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_str) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_str) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_str) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_str) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_str) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++----+-----+ +| c | cnt | ++----+-----+ +| | 3 | +| S1 | 3 | +| S2 | 3 | ++----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++----+-----+ +| c | cnt | ++----+-----+ +| S2 | 3 | +| S1 | 3 | +| | 3 | ++----+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + ORDER BY c ASC); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | +| | +| | +| | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | +| | +| | +| | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-03-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-01-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A8_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY c +ORDER BY c ASC; ++------+-----+ +| c | cnt | ++------+-----+ +| | 3 | +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | ++------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++------+-----+ +| c | cnt | ++------+-----+ +| true | 3 | +| S1 | 3 | +| 1 | 3 | +| 0.1 | 3 | +| | 3 | ++------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_mixed) AS u(c) + ORDER BY c ASC); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | +| | +| | +| | ++------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(a_mixed) AS u(c) + ORDER BY 1 DESC); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | +| | +| | +| | ++------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 5 | +| 2022-02-01 00:00:00.000 | 5 | +| 2022-03-01 00:00:00.000 | 5 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 5 | +| 2022-02-01 00:00:00.000 | 5 | +| 2022-01-01 00:00:00.000 | 5 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_mixed) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(a_mixed) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_mixed) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(a_mixed) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 5 | +| 1 | 5 | +| 2 | 5 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(a_mixed) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 5 | +| 1 | 5 | +| | 5 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_mixed) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(a_mixed) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_mixed) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| | +| | +| | +| | +| | ++-------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A9_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(a_mixed) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| | +| | +| | +| | +| | ++-------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++------+-----+ +| c | cnt | ++------+-----+ +| | 3 | +| 0.1 | 3 | +| 1 | 3 | +| S1 | 3 | +| true | 3 | ++------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++------+-----+ +| c | cnt | ++------+-----+ +| true | 3 | +| S1 | 3 | +| 1 | 3 | +| 0.1 | 3 | +| | 3 | ++------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + ORDER BY c ASC); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | +| | +| | +| | ++------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | +| | +| | +| | ++------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 5 | +| 2022-02-01 00:00:00.000 | 5 | +| 2022-03-01 00:00:00.000 | 5 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 5 | +| 2022-02-01 00:00:00.000 | 5 | +| 2022-01-01 00:00:00.000 | 5 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 5 | +| 1 | 5 | +| 2 | 5 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 5 | +| 1 | 5 | +| | 5 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| | +| | +| | +| | +| | ++-------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A10_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| | +| | +| | +| | +| | ++-------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++---+-----+ +| c | cnt | ++---+-----+ +| | 9 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++---+-----+ +| c | cnt | ++---+-----+ +| | 9 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + ORDER BY c ASC); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-03-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-03-01 00:00:00.000 | 3 | +| 2022-02-01 00:00:00.000 | 3 | +| 2022-01-01 00:00:00.000 | 3 | ++-------------------------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-02-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | +| 2022-03-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ +| 2 | 3 | +| 1 | 3 | +| | 3 | ++-------+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A11_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++---+-----+ +| c | cnt | ++---+-----+ ++---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++---+-----+ +| c | cnt | ++---+-----+ ++---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + ORDER BY c ASC); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++--------+-----+ +| __time | cnt | ++--------+-----+ ++--------+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++--------+-----+ +| __time | cnt | ++--------+-----+ ++--------+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +ORDER BY __time ASC; ++--------+ +| __time | ++--------+ ++--------+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; ++--------+ +| __time | ++--------+ ++--------+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + ORDER BY __time ASC); ++--------+ +| __time | ++--------+ ++--------+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++--------+ +| __time | ++--------+ ++--------+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +ORDER BY s_int ASC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ ++-------+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + count(*) cnt +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +GROUP BY s_int +ORDER BY 1 DESC; ++-------+-----+ +| s_int | cnt | ++-------+-----+ ++-------+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +ORDER BY s_int ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + ORDER BY s_int ASC); ++-------+ +| s_int | ++-------+ ++-------+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A12_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int +FROM + (SELECT s_int + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| s_int | ++-------+ ++-------+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A1_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 8 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A1_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A2_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 8 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A2_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A3_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 8 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A3_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A4_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 8 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A4_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A5_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 14 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A5_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A6_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 8 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A6_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A7_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 8 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A7_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A8_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A8_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 8 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A8_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A9_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A9_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 8 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A9_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A10_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A10_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 8 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A10_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A11_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A11_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A11_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A12_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A12_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 14 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A12_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +INNER JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +INNER JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +INNER JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +INNER JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +INNER JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +INNER JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +INNER JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +INNER JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +INNER JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +INNER JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +INNER JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +INNER JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +INNER JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +INNER JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +INNER JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +INNER JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +INNER JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +INNER JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +INNER JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +INNER JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.a_int) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.a_int) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+----+ +| s_int | c1 | ++-------+----+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+----+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.a_int) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.a_int) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+----+ +| s_int | c1 | ++-------+----+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+----+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +LEFT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +LEFT JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +LEFT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +LEFT JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +LEFT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +LEFT JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +LEFT JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +LEFT JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +LEFT JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +LEFT JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +LEFT JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +LEFT JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +LEFT JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +LEFT JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +LEFT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +LEFT JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +LEFT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +LEFT JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +LEFT JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +LEFT JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.a_int) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.a_int) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+----+ +| s_int | c1 | ++-------+----+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+----+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +RIGHT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +RIGHT JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +RIGHT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +RIGHT JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +RIGHT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +RIGHT JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +RIGHT JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +RIGHT JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +RIGHT JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +RIGHT JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +RIGHT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +RIGHT JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +RIGHT JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +RIGHT JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +RIGHT JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +RIGHT JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.a_int) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.a_int) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+----+ +| s_int | c1 | ++-------+----+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+----+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +FULL JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +FULL JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +FULL JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +FULL JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +FULL JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +FULL JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +FULL JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +FULL JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +FULL JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +FULL JOIN test_unnest t2, + unnest(a_int) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +FULL JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +FULL JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +FULL JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(a_int) AS u(c) +FULL JOIN test_unnest, + unnest(a_int) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest t2 ON u.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t2.s_int=u.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +FULL JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +FULL JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +FULL JOIN test_unnest t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +FULL JOIN test_unnest t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 2 | 1 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN t2 ON t2.s_int=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +FULL JOIN t2 ON t2.c=t1.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest t2, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +FULL JOIN test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.s_int=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.c=t2.s_int +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.s_int=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.c=t2.c +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | ++-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.a_int) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.a_int) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.a_int) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+----+ +| s_int | c1 | ++-------+----+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+----+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | ++-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(t1.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 1 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | 2 | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 1 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | 2 | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t2.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(a_int) AS u(c), + test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM (test_unnest t1 + CROSS JOIN unnest(a_int) AS u(c)) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND u.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int=t1.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t2.c=t1.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int=t1.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t2.c=t1.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c1 +FROM test_unnest t1, + unnest(t1.a_int) AS u1(c1) +CROSS JOIN test_unnest, + unnest(t2.a_int) t2 AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c1 +FROM test_unnest t1, + unnest(t1.a_int) AS u1(c1) +CROSS JOIN test_unnest, + unnest(t2.a_int) t2 AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c1=t2.s_int; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c1 +FROM test_unnest t1, + unnest(t1.a_int) AS u1(c1) +CROSS JOIN test_unnest, + unnest(t2.a_int) t2 AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.c2; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c1 +FROM test_unnest t1, + unnest(t1.a_int) AS u1(c1) +CROSS JOIN test_unnest, + unnest(t2.a_int) t2 AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c1=t2.c2; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t2.s_int, + c +FROM test_unnest t1 +CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c), + test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM (test_unnest t1 + CROSS JOIN unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND u.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int=t1.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t2.c=t1.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int=t1.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | | ++-------+-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t2.c=t1.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c1 +FROM test_unnest t1, + unnest(t1.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1) +CROSS JOIN test_unnest, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c1 +FROM test_unnest t1, + unnest(t1.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1) +CROSS JOIN test_unnest, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c1=t2.s_int; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c1 +FROM test_unnest t1, + unnest(t1.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1) +CROSS JOIN test_unnest, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.c2; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + c1 +FROM test_unnest t1, + unnest(t1.json_value(a_nested, '$[1]' RETURNING bigint array)) AS u1(c1) +CROSS JOIN test_unnest, + unnest(t2.json_value(a_nested, '$[1]' RETURNING bigint array)) t2 AS u2(c2) +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c1=t2.c2; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.s_int, + t1.s_int, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.s_int; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.s_int=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 1 | 1 | | +| 1 | 1 | | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | +| 2 | 2 | | +| 2 | 2 | | ++-------+-------+---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2_C31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)) +SELECT t1.s_int, + t1.s_int, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.s_int IN (0, + 1, + 2, + 999) + AND t2.s_int IN (0, + 1, + 2, + 999) + AND t1.c=t2.c; ++-------+-------+---+ +| s_int | s_int | c | ++-------+-------+---+ +| 1 | 1 | 1 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 2 | +| 2 | 2 | 1 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 2 | ++-------+-------+---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 0 | +| 1 | 1 | +| 1 | | +| 2 | 0 | +| 2 | 1 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+-------+ +| s_int | c | ++-------+-------+ +| 1 | false | +| 1 | true | +| 1 | | +| 2 | false | +| 2 | true | +| 2 | | ++-------+-------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A2_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[0]' RETURNING boolean array)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A3_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | 1 | +| 1 | 2 | +| 1 | | +| 2 | 1 | +| 2 | 2 | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A4_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+-----+ +| s_int | c | ++-------+-----+ +| 1 | 0.1 | +| 1 | 0.2 | +| 1 | | +| 2 | 0.1 | +| 2 | 0.2 | +| 2 | | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A5_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+-----+ +| s_int | c | ++-------+-----+ +| 1 | 0.1 | +| 1 | 0.2 | +| 1 | | +| 2 | 0.1 | +| 2 | 0.2 | +| 2 | | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A6_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[2]' RETURNING DOUBLE array)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+----+ +| s_int | c | ++-------+----+ +| 1 | S1 | +| 1 | S2 | +| 1 | | +| 2 | S1 | +| 2 | S2 | +| 2 | | ++-------+----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A7_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A8_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+----+ +| s_int | c | ++-------+----+ +| 1 | S1 | +| 1 | S2 | +| 1 | | +| 2 | S1 | +| 2 | S2 | +| 2 | | ++-------+----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A8_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[3]' RETURNING varchar array)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A9_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+------+ +| s_int | c | ++-------+------+ +| 1 | 0.1 | +| 1 | 1 | +| 1 | S1 | +| 1 | true | +| 1 | | +| 2 | 0.1 | +| 2 | 1 | +| 2 | S1 | +| 2 | true | +| 2 | | ++-------+------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A9_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A10_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+------+ +| s_int | c | ++-------+------+ +| 1 | 0.1 | +| 1 | 1 | +| 1 | S1 | +| 1 | true | +| 1 | | +| 2 | 0.1 | +| 2 | 1 | +| 2 | S1 | +| 2 | true | +| 2 | | ++-------+------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A10_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[6]' RETURNING varchar array)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A11_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+---+ +| s_int | c | ++-------+---+ +| 1 | | +| 1 | | +| 1 | | +| 2 | | +| 2 | | +| 2 | | ++-------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A11_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[4]' RETURNING varchar array)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A12_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int, + c +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + WHERE s_int IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + WHERE s_int IN (2, + 999)); ++-------+---+ +| s_int | c | ++-------+---+ ++-------+---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A12_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(json_value(a_nested, '$[5]' RETURNING varchar array)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# Total query count 1091 Positive tests: 907 Negative tests: 184 +#------------------------------------------------------------------------- diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql_filter.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql_filter.iq new file mode 100644 index 000000000000..d53f24183749 --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql_filter.iq @@ -0,0 +1,24180 @@ +!set useApproximateCountDistinct false +!use druidtest://?componentSupplier=StandardComponentSupplier&datasets=sql/src/test/quidem/qatests/qaUnnest/array&numMergeBuffers=3 +!set outputformat mysql +SELECT * +FROM test_unnest; ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| __time | s_int | s_null | a_bool | a_int | a_float | a_str | a_null | a_empty | a_mixed | a_nested | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2022-01-01 00:00:00.000 | 1 | | [1, 0, null] | [1, 2, null] | [0.1, 0.2, null] | [S1, S2, null] | [null, null, null] | [] | [true, 1, 0.1, S1, null] | [[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null]]]] | +| 2022-02-01 00:00:00.000 | 2 | | [null, 1, 0] | [null, 1, 2] | [null, 0.1, 0.2] | [null, S1, S2] | [null, null, null] | [] | [null, true, 1, 0.1, S1] | [[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"]]]] | +| 2022-03-01 00:00:00.000 | | | [0, null, 1] | [2, null, 1] | [0.2, null, 0.1] | [S2, null, S1] | [null, null, null] | [] | [S1, null, true, 1, 0.1] | [[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1]]]] | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c=1; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c=1); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c=1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c=1; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c=1; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c<>1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c<>1); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c<>1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c<>1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c>1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c>1); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c>1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c>1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c>=1; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c>=1); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>=1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c>=1; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c>=1; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c<1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c<1); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c<1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c<1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c<=1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c<=1); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<=1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c<=1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c<=1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999)); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999)), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c IS NOT NULL); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 0 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4)); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4)), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%')), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c IN (1, + 998) + AND c NOT IN (0, + 999); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c IN (1, + 998) + AND c NOT IN (0, + 999)); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN (1, + 998) + AND c NOT IN (0, + 999)), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c IN (1, + 998) + AND c NOT IN (0, + 999); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c IN (1, + 998) + AND c NOT IN (0, + 999); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col))), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int=1 + AND c=1; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int=1 + AND c=1); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1 + AND c=1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int=1 + AND c=1; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int=1 + AND c=1; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int<>1 + AND c<>1; ++---+ +| c | ++---+ +| 0 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int<>1 + AND c<>1); ++---+ +| c | ++---+ +| 0 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1 + AND c<>1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int<>1 + AND c<>1; ++---+ +| c | ++---+ +| 0 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int<>1 + AND c<>1; ++---+ +| c | ++---+ +| 0 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int>1 + AND c>1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int>1 + AND c>1); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1 + AND c>1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int>1 + AND c>1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int>1 + AND c>1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int>=1 + AND c>=1; ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int>=1 + AND c>=1); ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1 + AND c>=1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int>=1 + AND c>=1; ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int>=1 + AND c>=1; ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int<1 + AND c<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int<1 + AND c<1); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1 + AND c<1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int<1 + AND c<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int<1 + AND c<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int<=1 + AND c<=1; ++---+ +| c | ++---+ +| 0 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int<=1 + AND c<=1); ++---+ +| c | ++---+ +| 0 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1 + AND c<=1), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int<=1 + AND c<=1; ++---+ +| c | ++---+ +| 0 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int<=1 + AND c<=1; ++---+ +| c | ++---+ +| 0 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999)); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999)), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>1 + OR NOT c<>998) + AND (NOT c=0 + OR NOT c=999); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=1 + OR c=998) + AND NOT c=0 + AND NOT c=999; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL + AND c IS NULL), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IS NOT NULL + AND c IS NOT NULL); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL + AND c IS NOT NULL), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (1, + 998) IS TRUE + AND c IN (0, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (1, + 998) IS FALSE + AND c IN (0, + 999) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4)); ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4)), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 1 AND 2) + AND (c NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%')); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%')), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (1, + 998) + AND c NOT IN (0, + 999); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (1, + 998) + AND c NOT IN (0, + 999)); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (1, + 998) + AND c NOT IN (0, + 999)), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (1, + 998) + AND c NOT IN (0, + 999); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (1, + 998) + AND c NOT IN (0, + 999); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col))), unnest(a_bool) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(1),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int=1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int=1); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int=1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int=1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int<>1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int<>1); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int<>1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int<>1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int>1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int>1); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int>1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int>1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int>=1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int>=1); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int>=1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int>=1; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int<1); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int<=1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int<=1); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int<=1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int<=1; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999)); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999)), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IS NULL; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IS NULL); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IS NULL; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IS NULL; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IS NOT NULL; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IS NOT NULL); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IS NOT NULL; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IS NOT NULL; ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_bool) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))), unnest(a_bool) AS u(c); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_bool) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_bool) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++---+ +| c | ++---+ +| 0 | +| 1 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c=2; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c=2); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c=2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c=2; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c=2; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c<>2; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c<>2); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c<>2; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c<>2; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c>2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c>2); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c>2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c>2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c>=2; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c>=2); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>=2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c>=2; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c>=2; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c<2; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c<2); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c<2; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c<2; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c<=2; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c<=2); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<=2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c<=2; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c<=2; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999)); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999)), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c IS NOT NULL); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5)); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5)), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c IN (2, + 998) + AND c NOT IN (1, + 999); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c IN (2, + 998) + AND c NOT IN (1, + 999)); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN (2, + 998) + AND c NOT IN (1, + 999)), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c IN (2, + 998) + AND c NOT IN (1, + 999); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c IN (2, + 998) + AND c NOT IN (1, + 999); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col))), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int=1 + AND c=2; ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int=1 + AND c=2); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1 + AND c=2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int=1 + AND c=2; ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int=1 + AND c=2; ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int<>1 + AND c<>2; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int<>1 + AND c<>2); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1 + AND c<>2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int<>1 + AND c<>2; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int<>1 + AND c<>2; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int>1 + AND c>2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int>1 + AND c>2); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1 + AND c>2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int>1 + AND c>2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int>1 + AND c>2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int>=1 + AND c>=2; ++---+ +| c | ++---+ +| 2 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int>=1 + AND c>=2); ++---+ +| c | ++---+ +| 2 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1 + AND c>=2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int>=1 + AND c>=2; ++---+ +| c | ++---+ +| 2 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int>=1 + AND c>=2; ++---+ +| c | ++---+ +| 2 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int<1 + AND c<2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int<1 + AND c<2); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1 + AND c<2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int<1 + AND c<2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int<1 + AND c<2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int<=1 + AND c<=2; ++---+ +| c | ++---+ +| 1 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int<=1 + AND c<=2); ++---+ +| c | ++---+ +| 1 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1 + AND c<=2), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int<=1 + AND c<=2; ++---+ +| c | ++---+ +| 1 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int<=1 + AND c<=2; ++---+ +| c | ++---+ +| 1 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999)); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999)), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>2 + OR NOT c<>998) + AND (NOT c=1 + OR NOT c=999); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999; ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999; ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=2 + OR c=998) + AND NOT c=1 + AND NOT c=999; ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL + AND c IS NULL), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IS NOT NULL + AND c IS NOT NULL); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL + AND c IS NOT NULL), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (2, + 998) IS TRUE + AND c IN (1, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (2, + 998) IS FALSE + AND c IN (1, + 999) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5); ++---+ +| c | ++---+ +| 2 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5)); ++---+ +| c | ++---+ +| 2 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5)), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5); ++---+ +| c | ++---+ +| 2 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 2 AND 3) + AND (c NOT BETWEEN 4 AND 5); ++---+ +| c | ++---+ +| 2 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (2, + 998) + AND c NOT IN (1, + 999); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (2, + 998) + AND c NOT IN (1, + 999)); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (2, + 998) + AND c NOT IN (1, + 999)), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (2, + 998) + AND c NOT IN (1, + 999); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (2, + 998) + AND c NOT IN (1, + 999); ++---+ +| c | ++---+ +| 2 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col))), unnest(a_int) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int=1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int=1); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int=1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int=1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int<>1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int<>1); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int<>1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int<>1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int>1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int>1); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int>1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int>1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int>=1; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int>=1); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int>=1; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int>=1; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int<1); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1), unnest(a_int) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int<=1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int<=1); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int<=1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int<=1; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999)); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999)), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IS NULL; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IS NULL); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IS NULL; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IS NULL; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IS NOT NULL; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IS NOT NULL); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IS NOT NULL; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IS NOT NULL; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE), unnest(a_int) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))), unnest(a_int) AS u(c); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_int) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_int) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++---+ +| c | ++---+ +| 1 | +| 2 | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c=0.2; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c=0.2); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c=0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c=0.2; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c=0.2; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c<>0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c<>0.2); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c<>0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c<>0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c>0.2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c>0.2); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c>0.2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c>0.2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c>=0.2; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c>=0.2); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>=0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c>=0.2; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c>=0.2; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c<0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c<0.2); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c<0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c<0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c<=0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c<=0.2); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<=0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c<=0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c<=0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999)); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999)), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c IS NOT NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c IS NOT NULL); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c IS NOT NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c IS NOT NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5)); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5)), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c IN (0.2, + 998) + AND c NOT IN (0.1, + 999); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c IN (0.2, + 998) + AND c NOT IN (0.1, + 999)); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN (0.2, + 998) + AND c NOT IN (0.1, + 999)), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c IN (0.2, + 998) + AND c NOT IN (0.1, + 999); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c IN (0.2, + 998) + AND c NOT IN (0.1, + 999); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | +| 0.2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col))), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int=1 + AND c=0.2; ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int=1 + AND c=0.2); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1 + AND c=0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int=1 + AND c=0.2; ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int=1 + AND c=0.2; ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int<>1 + AND c<>0.2; ++-----+ +| c | ++-----+ +| 0.1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int<>1 + AND c<>0.2); ++-----+ +| c | ++-----+ +| 0.1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1 + AND c<>0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int<>1 + AND c<>0.2; ++-----+ +| c | ++-----+ +| 0.1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int<>1 + AND c<>0.2; ++-----+ +| c | ++-----+ +| 0.1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int>1 + AND c>0.2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int>1 + AND c>0.2); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1 + AND c>0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int>1 + AND c>0.2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int>1 + AND c>0.2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int>=1 + AND c>=0.2; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int>=1 + AND c>=0.2); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1 + AND c>=0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int>=1 + AND c>=0.2; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int>=1 + AND c>=0.2; ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int<1 + AND c<0.2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int<1 + AND c<0.2); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1 + AND c<0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int<1 + AND c<0.2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int<1 + AND c<0.2; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int<=1 + AND c<=0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int<=1 + AND c<=0.2); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1 + AND c<=0.2), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int<=1 + AND c<=0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int<=1 + AND c<=0.2; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999)); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999)), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999) + AND (NOT c<>0.2 + OR NOT c<>998) + AND (NOT c=0.1 + OR NOT c=999); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999; ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999; ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999 + AND (c=0.2 + OR c=998) + AND NOT c=0.1 + AND NOT c=999; ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL + AND c IS NULL), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | ++-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IS NOT NULL + AND c IS NOT NULL); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | ++-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL + AND c IS NOT NULL), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | ++-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | ++-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE; ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE; ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN (0.2, + 998) IS TRUE + AND c IN (0.1, + 999) IS NOT TRUE; ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN (0.2, + 998) IS FALSE + AND c IN (0.1, + 999) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5)); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5)), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 0.2 AND 0.3) + AND (c NOT BETWEEN 0.4 AND 0.5); ++-----+ +| c | ++-----+ +| 0.2 | +| 0.2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (0.2, + 998) + AND c NOT IN (0.1, + 999); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (0.2, + 998) + AND c NOT IN (0.1, + 999)); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (0.2, + 998) + AND c NOT IN (0.1, + 999)), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (0.2, + 998) + AND c NOT IN (0.1, + 999); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN (0.2, + 998) + AND c NOT IN (0.1, + 999); ++-----+ +| c | ++-----+ +| 0.2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col))), unnest(a_float) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(0.2),(998)) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES(0.1),(999)) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int=1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int=1); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int=1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int=1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int<>1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int<>1); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int<>1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int<>1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int>1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int>1); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int>1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int>1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int>=1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int>=1); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int>=1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int>=1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int<1); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1), unnest(a_float) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int<=1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int<=1); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int<=1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int<=1; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999)); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999)), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int=999); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int=999; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IS NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IS NULL); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IS NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IS NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IS NOT NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IS NOT NULL); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IS NOT NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IS NOT NULL; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE), unnest(a_float) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.2 | +| 0.2 | +| | +| | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_float) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))), unnest(a_float) AS u(c); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_float) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_float) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c='S2'; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c='S2'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c='S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c='S2'; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c='S2'; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c<>'S2'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c<>'S2'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>'S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c<>'S2'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c<>'S2'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c>'S2'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c>'S2'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>'S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c>'S2'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c>'S2'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c>='S2'; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c>='S2'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>='S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c>='S2'; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c>='S2'; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c<'S2'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c<'S2'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<'S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c<'S2'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c<'S2'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c<='S2'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c<='S2'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<='S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c<='S2'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c<='S2'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999')); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999')), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c IS NOT NULL; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c IS NOT NULL); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c IS NOT NULL; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c IS NOT NULL; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | +| S2 | +| S2 | +| S2 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5')); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5')), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c IN ('S2', + '998') + AND c NOT IN ('S1', + '999'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c IN ('S2', + '998') + AND c NOT IN ('S1', + '999')); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('S2', + '998') + AND c NOT IN ('S1', + '999')), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c IN ('S2', + '998') + AND c NOT IN ('S1', + '999'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c IN ('S2', + '998') + AND c NOT IN ('S1', + '999'); ++----+ +| c | ++----+ +| S2 | +| S2 | +| S2 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col))), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int=1 + AND c='S2'; ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int=1 + AND c='S2'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1 + AND c='S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int=1 + AND c='S2'; ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int=1 + AND c='S2'; ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int<>1 + AND c<>'S2'; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int<>1 + AND c<>'S2'); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1 + AND c<>'S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int<>1 + AND c<>'S2'; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int<>1 + AND c<>'S2'; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int>1 + AND c>'S2'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int>1 + AND c>'S2'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1 + AND c>'S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int>1 + AND c>'S2'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int>1 + AND c>'S2'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int>=1 + AND c>='S2'; ++----+ +| c | ++----+ +| S2 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int>=1 + AND c>='S2'); ++----+ +| c | ++----+ +| S2 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1 + AND c>='S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int>=1 + AND c>='S2'; ++----+ +| c | ++----+ +| S2 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int>=1 + AND c>='S2'; ++----+ +| c | ++----+ +| S2 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int<1 + AND c<'S2'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int<1 + AND c<'S2'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1 + AND c<'S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int<1 + AND c<'S2'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int<1 + AND c<'S2'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int<=1 + AND c<='S2'; ++----+ +| c | ++----+ +| S1 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int<=1 + AND c<='S2'); ++----+ +| c | ++----+ +| S1 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1 + AND c<='S2'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int<=1 + AND c<='S2'; ++----+ +| c | ++----+ +| S1 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int<=1 + AND c<='S2'; ++----+ +| c | ++----+ +| S1 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999')); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999')), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S2' + OR NOT c<>'998') + AND (NOT c='S1' + OR NOT c='999'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'; ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'; ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S2' + OR c='998') + AND NOT c='S1' + AND NOT c='999'; ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL + AND c IS NULL), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | ++----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IS NOT NULL + AND c IS NOT NULL); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | ++----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL + AND c IS NOT NULL), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | ++----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | ++----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S2', + '998') IS TRUE + AND c IN ('S1', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S2', + '998') IS FALSE + AND c IN ('S1', + '999') IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5'); ++----+ +| c | ++----+ +| S2 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5')); ++----+ +| c | ++----+ +| S2 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5')), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5'); ++----+ +| c | ++----+ +| S2 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S2' AND 'S3') + AND (c NOT BETWEEN 'S4' AND 'S5'); ++----+ +| c | ++----+ +| S2 | +| S2 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%')), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%2%') + AND (cast(c AS varchar) not like '%3%'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S2', + '998') + AND c NOT IN ('S1', + '999'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S2', + '998') + AND c NOT IN ('S1', + '999')); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S2', + '998') + AND c NOT IN ('S1', + '999')), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S2', + '998') + AND c NOT IN ('S1', + '999'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S2', + '998') + AND c NOT IN ('S1', + '999'); ++----+ +| c | ++----+ +| S2 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col))), unnest(a_str) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S2'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S1'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int=1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int=1); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int=1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int=1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int<>1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int<>1); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int<>1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int<>1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int>1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int>1); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int>1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int>1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int>=1; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int>=1); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int>=1; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int>=1; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int<1); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1), unnest(a_str) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int<=1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int<=1); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int<=1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int<=1; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999'); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999')); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999')), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999'); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999'); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IS NULL; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IS NULL); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IS NULL; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IS NULL; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IS NOT NULL; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IS NOT NULL); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IS NOT NULL; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IS NOT NULL; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE), unnest(a_str) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S2 | +| S2 | +| | +| | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_str) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))), unnest(a_str) AS u(c); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_str) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_str) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++----+ +| c | ++----+ +| S1 | +| S2 | +| | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c='S1'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c='S1'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c='S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c='S1'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c='S1'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c<>'S1'; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| true | +| true | +| true | ++------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c<>'S1'); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| true | +| true | +| true | ++------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>'S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c<>'S1'; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| true | +| true | +| true | ++------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c<>'S1'; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| true | +| true | +| true | ++------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c>'S1'; ++------+ +| c | ++------+ +| true | +| true | +| true | ++------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c>'S1'); ++------+ +| c | ++------+ +| true | +| true | +| true | ++------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>'S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c>'S1'; ++------+ +| c | ++------+ +| true | +| true | +| true | ++------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c>'S1'; ++------+ +| c | ++------+ +| true | +| true | +| true | ++------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c>='S1'; ++------+ +| c | ++------+ +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | ++------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c>='S1'); ++------+ +| c | ++------+ +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | ++------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>='S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c>='S1'; ++------+ +| c | ++------+ +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | ++------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c>='S1'; ++------+ +| c | ++------+ +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | ++------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c<'S1'; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c<'S1'); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<'S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c<'S1'; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c<'S1'; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c<='S1'; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c<='S1'); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<='S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c<='S1'; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c<='S1'; ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999')); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999')), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c IS NOT NULL; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | ++------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c IS NOT NULL); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | ++------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c IS NOT NULL; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | ++------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c IS NOT NULL; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | +| true | +| true | +| true | ++------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4')); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4')), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%'); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%')); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%')), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%'); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%'); ++-----+ +| c | ++-----+ +| 0.1 | +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| 1 | +| S1 | +| S1 | +| S1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c IN ('S1', + '998') + AND c NOT IN ('S2', + '999'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c IN ('S1', + '998') + AND c NOT IN ('S2', + '999')); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('S1', + '998') + AND c NOT IN ('S2', + '999')), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c IN ('S1', + '998') + AND c NOT IN ('S2', + '999'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c IN ('S1', + '998') + AND c NOT IN ('S2', + '999'); ++----+ +| c | ++----+ +| S1 | +| S1 | +| S1 | ++----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col))), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int=1 + AND c='S1'; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int=1 + AND c='S1'); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1 + AND c='S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int=1 + AND c='S1'; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int=1 + AND c='S1'; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int<>1 + AND c<>'S1'; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| true | ++------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int<>1 + AND c<>'S1'); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| true | ++------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1 + AND c<>'S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int<>1 + AND c<>'S1'; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| true | ++------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int<>1 + AND c<>'S1'; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| true | ++------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int>1 + AND c>'S1'; ++------+ +| c | ++------+ +| true | ++------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int>1 + AND c>'S1'); ++------+ +| c | ++------+ +| true | ++------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1 + AND c>'S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int>1 + AND c>'S1'; ++------+ +| c | ++------+ +| true | ++------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int>1 + AND c>'S1'; ++------+ +| c | ++------+ +| true | ++------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int>=1 + AND c>='S1'; ++------+ +| c | ++------+ +| S1 | +| S1 | +| true | +| true | ++------+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int>=1 + AND c>='S1'); ++------+ +| c | ++------+ +| S1 | +| S1 | +| true | +| true | ++------+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1 + AND c>='S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int>=1 + AND c>='S1'; ++------+ +| c | ++------+ +| S1 | +| S1 | +| true | +| true | ++------+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int>=1 + AND c>='S1'; ++------+ +| c | ++------+ +| S1 | +| S1 | +| true | +| true | ++------+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int<1 + AND c<'S1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int<1 + AND c<'S1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1 + AND c<'S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int<1 + AND c<'S1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int<1 + AND c<'S1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int<=1 + AND c<='S1'; ++-----+ +| c | ++-----+ +| 0.1 | +| 1 | +| S1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int<=1 + AND c<='S1'); ++-----+ +| c | ++-----+ +| 0.1 | +| 1 | +| S1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1 + AND c<='S1'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int<=1 + AND c<='S1'; ++-----+ +| c | ++-----+ +| 0.1 | +| 1 | +| S1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int<=1 + AND c<='S1'; ++-----+ +| c | ++-----+ +| 0.1 | +| 1 | +| S1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999'); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999')); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999')), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999'); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999') + AND (NOT c<>'S1' + OR NOT c<>'998') + AND (NOT c='S2' + OR NOT c='999'); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999' + AND (c='S1' + OR c='998') + AND NOT c='S2' + AND NOT c='999'; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL + AND c IS NULL), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | ++------+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IS NOT NULL + AND c IS NOT NULL); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | ++------+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL + AND c IS NOT NULL), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | ++------+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IS NOT NULL + AND c IS NOT NULL; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | ++------+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE + AND c IN ('S1', + '998') IS TRUE + AND c IN ('S2', + '999') IS NOT TRUE; ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE + AND c IN ('S1', + '998') IS FALSE + AND c IN ('S2', + '999') IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4'); ++----+ +| c | ++----+ +| S1 | +| S1 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4')); ++----+ +| c | ++----+ +| S1 | +| S1 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4')), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4'); ++----+ +| c | ++----+ +| S1 | +| S1 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4) + AND (c BETWEEN 'S1' AND 'S2') + AND (c NOT BETWEEN 'S3' AND 'S4'); ++----+ +| c | ++----+ +| S1 | +| S1 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%'); ++-----+ +| c | ++-----+ +| 0.1 | +| 1 | +| S1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%')); ++-----+ +| c | ++-----+ +| 0.1 | +| 1 | +| S1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%')), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%'); ++-----+ +| c | ++-----+ +| 0.1 | +| 1 | +| S1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%') + AND (cast(c AS varchar) like '%1%') + AND (cast(c AS varchar) not like '%2%'); ++-----+ +| c | ++-----+ +| 0.1 | +| 1 | +| S1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S1', + '998') + AND c NOT IN ('S2', + '999'); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S1', + '998') + AND c NOT IN ('S2', + '999')); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S1', + '998') + AND c NOT IN ('S2', + '999')), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S1', + '998') + AND c NOT IN ('S2', + '999'); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997) + AND c IN ('S1', + '998') + AND c NOT IN ('S2', + '999'); ++----+ +| c | ++----+ +| S1 | ++----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col))), unnest(a_mixed) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(1),(997)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES('S1'),('998')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('S2'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int=1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int=1); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int=1), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int=1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int=1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int<>1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int<>1); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<>1), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int<>1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int<>1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int>1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int>1); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>1), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int>1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int>1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int>=1; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int>=1); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int>=1), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int>=1; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int>=1; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int<1); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<1), unnest(a_mixed) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int<1; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int<=1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int<=1); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int<=1), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int<=1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int<=1; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999'); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999')); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999')), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999'); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (NOT s_int<>1 + OR NOT s_int<>997) + AND (NOT s_int=0 + OR NOT s_int='999'); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (s_int=1 + OR s_int=997) + AND NOT s_int=0 + AND NOT s_int='999'; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IS NULL; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IS NULL); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NULL), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IS NULL; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IS NULL; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IS NOT NULL; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IS NOT NULL); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IS NOT NULL), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IS NOT NULL; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IS NOT NULL; ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) IS TRUE + AND s_int IN (0, + 997) IS NOT TRUE; ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE), unnest(a_mixed) AS u(c); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) IS FALSE + AND s_int IN (0, + 997) IS NOT FALSE; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4)), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (s_int BETWEEN 1 AND 2) + AND (s_int NOT BETWEEN 3 AND 4); ++------+ +| c | ++------+ +| 0.1 | +| 0.1 | +| 1 | +| 1 | +| S1 | +| S1 | +| true | +| true | +| | +| | ++------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%')), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE (cast(s_int AS varchar) like '%1%') + AND (cast(s_int AS varchar) not like '%3%'); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997)), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IN (1, + 996) + AND s_int NOT IN (0, + 997); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(a_mixed) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c) + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col))), unnest(a_mixed) AS u(c); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(a_mixed) AS u(c)) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(a_mixed) AS u(c) +WHERE s_int IN + (SELECT col + FROM ( + VALUES(1),(996)) AS t(col)) + AND s_int NOT IN + (SELECT col + FROM ( + VALUES(0),(997)) AS t(col)); ++------+ +| c | ++------+ +| 0.1 | +| 1 | +| S1 | +| true | +| | ++------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# Total query count 1201 Positive tests: 1001 Negative tests: 200 +#------------------------------------------------------------------------- diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql_ops.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql_ops.iq new file mode 100644 index 000000000000..fb86811362a6 --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql_ops.iq @@ -0,0 +1,309 @@ +!set useApproximateCountDistinct false +!use druidtest://?componentSupplier=StandardComponentSupplier&datasets=sql/src/test/quidem/qatests/qaUnnest/array&numMergeBuffers=3 +!set outputformat mysql +SELECT * +FROM test_unnest; ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| __time | s_int | s_null | a_bool | a_int | a_float | a_str | a_null | a_empty | a_mixed | a_nested | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2022-01-01 00:00:00.000 | 1 | | [1, 0, null] | [1, 2, null] | [0.1, 0.2, null] | [S1, S2, null] | [null, null, null] | [] | [true, 1, 0.1, S1, null] | [[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null]]]] | +| 2022-02-01 00:00:00.000 | 2 | | [null, 1, 0] | [null, 1, 2] | [null, 0.1, 0.2] | [null, S1, S2] | [null, null, null] | [] | [null, true, 1, 0.1, S1] | [[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"]]]] | +| 2022-03-01 00:00:00.000 | | | [0, null, 1] | [2, null, 1] | [0.2, null, 0.1] | [S2, null, S1] | [null, null, null] | [] | [S1, null, true, 1, 0.1] | [[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1]]]] | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B1_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c+c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c+c)<99999 + OR (c+c) IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 4 | +| 4 | +| 4 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B1_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c+s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c+s_int)<99999 + OR (c+s_int) IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 3 | +| 3 | +| 4 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B2_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c-c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c-c)<99999 + OR (c-c) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B2_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c-s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c-s_int)<99999 + OR (c-s_int) IS NULL); ++-----+ +| col | ++-----+ +| -1 | +| 0 | +| 0 | +| 1 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B3_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c*c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c*c)<99999 + OR (c*c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 4 | +| 4 | +| 4 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B3_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c*s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c*s_int)<99999 + OR (c*s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| 2 | +| 4 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B4_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c/c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c/c)<99999 + OR (c/c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B4_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c/s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c/s_int)<99999 + OR (c/s_int) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | +| 2 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A2_B1_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c||c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c||c)<'99999' + OR (c||c) IS NULL); ++-----+ +| col | ++-----+ +| 11 | +| 11 | +| 11 | +| 22 | +| 22 | +| 22 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A2_B1_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c||s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((c||s_int)<'99999' + OR (c||s_int) IS NULL); ++-----+ +| col | ++-----+ +| 11 | +| 12 | +| 21 | +| 22 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# Total query count 11 Positive tests: 11 Negative tests: 0 +#------------------------------------------------------------------------- diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql_other_funcs.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql_other_funcs.iq new file mode 100644 index 000000000000..a9eb5526ddf8 --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_array_sql_other_funcs.iq @@ -0,0 +1,20689 @@ +!set useApproximateCountDistinct false +!use druidtest://?componentSupplier=StandardComponentSupplier&datasets=sql/src/test/quidem/qatests/qaUnnest/array&numMergeBuffers=3 +!set outputformat mysql +SELECT * +FROM test_unnest; ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| __time | s_int | s_null | a_bool | a_int | a_float | a_str | a_null | a_empty | a_mixed | a_nested | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2022-01-01 00:00:00.000 | 1 | | [1, 0, null] | [1, 2, null] | [0.1, 0.2, null] | [S1, S2, null] | [null, null, null] | [] | [true, 1, 0.1, S1, null] | [[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null],[[true,false,null],[1,2,null],[0.1,0.2,null],["S1","S2",null],[null,null,null],[],[true,1,0.1,"S1",null]]]] | +| 2022-02-01 00:00:00.000 | 2 | | [null, 1, 0] | [null, 1, 2] | [null, 0.1, 0.2] | [null, S1, S2] | [null, null, null] | [] | [null, true, 1, 0.1, S1] | [[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,"S1","S2"],[null,null,null],[],[null,true,1,0.1,"S1"]]]] | +| 2022-03-01 00:00:00.000 | | | [0, null, 1] | [2, null, 1] | [0.2, null, 0.1] | [S2, null, S1] | [null, null, null] | [] | [S1, null, true, 1, 0.1] | [[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],["S2",null,"S1"],[null,null,null],[],["S1",null,true,1,0.1]]]] | ++-------------------------+-------+--------+--------------+--------------+------------------+----------------+--------------------+---------+--------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING count(*) IN (3); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING count(*) IN (3); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING count(*) IN (3); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING count(*) IN (3); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING count(DISTINCT c) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING count(DISTINCT c) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING count(DISTINCT c) IN (2); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING count(DISTINCT c) IN (2); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING count(DISTINCT s_int) IN (2); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING count(DISTINCT s_int) IN (2); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING count(DISTINCT s_int) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING count(DISTINCT s_int) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 6 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 6 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 6 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 6 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING sum(c) IN (3, + 6); ++-----+ +| col | ++-----+ +| 3 | +| 6 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING sum(c) IN (3, + 6); ++-----+ +| col | ++-----+ +| 3 | +| 6 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING sum(c) IN (3); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING sum(c) IN (3); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING sum(s_int) IN (3); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING sum(s_int) IN (3); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING sum(s_int) IN (3, + 6); ++-----+ +| col | ++-----+ +| 3 | +| 6 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING sum(s_int) IN (3, + 6); ++-----+ +| col | ++-----+ +| 3 | +| 6 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING min(c) IN (1, + 2); ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING min(c) IN (1, + 2); ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING min(c) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING min(c) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING min(s_int) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING min(s_int) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING min(s_int) IN (1, + 2); ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING min(s_int) IN (1, + 2); ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING max(c) IN (1, + 2); ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING max(c) IN (1, + 2); ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING max(c) IN (2); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING max(c) IN (2); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING max(s_int) IN (2); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING max(s_int) IN (2); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING max(s_int) IN (1, + 2); ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING max(s_int) IN (1, + 2); ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING avg(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING avg(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING avg(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(c) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING avg(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING avg(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING avg(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING avg(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(avg(s_int) AS int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING avg(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING approx_count_distinct(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING approx_count_distinct(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING approx_count_distinct(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING approx_count_distinct(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING approx_count_distinct(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING approx_count_distinct(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING approx_count_distinct(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING approx_count_distinct(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING approx_count_distinct_builtin(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING approx_count_distinct_builtin(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING approx_count_distinct_builtin(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING approx_count_distinct_builtin(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING approx_count_distinct_builtin(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING approx_count_distinct_builtin(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING approx_count_distinct_builtin(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING approx_count_distinct_builtin(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest(s_int, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest(s_int, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest(s_int, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest(s_int, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest_by(c, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest_by(c, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest_by(c, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest_by(c, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest_by(s_int, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest_by(s_int, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest_by(s_int, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest_by(s_int, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest_by(s_int, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING earliest_by(s_int, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest_by(s_int, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING earliest_by(s_int, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest(c, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest(c, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest(c, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest(c, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest(s_int, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest(s_int, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest(s_int, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(s_int, 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest(s_int, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest_by(c, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest_by(c, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest_by(c, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest_by(c, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest_by(s_int, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest_by(s_int, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest_by(s_int, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest_by(s_int, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest_by(s_int, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING latest_by(s_int, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest_by(s_int, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(s_int, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING latest_by(s_int, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING any_value(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING any_value(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING any_value(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING any_value(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING any_value(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY c + HAVING any_value(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(a_int) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING any_value(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL + GROUP BY s_int + HAVING any_value(s_int) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C1_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C2_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C4_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C4_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C5_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C5_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING grouping(c) IS NOT NULL; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING grouping(c) IS NOT NULL; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C8_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING grouping(c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C8_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING grouping(c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C9_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING grouping(s_int) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C9_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING grouping(s_int) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING grouping(s_int) IS NOT NULL; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT s_int col, + count(*) cnt, + grouping(s_int) gp +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING grouping(s_int) IS NOT NULL; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++--------------------------------------+ +| col | ++--------------------------------------+ +| [1, 2, null, null, 1, 2, 2, null, 1] | ++--------------------------------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++--------------------------------------+ +| col | ++--------------------------------------+ +| [1, 2, null, null, 1, 2, 2, null, 1] | ++--------------------------------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++--------------------------------------+ +| col | ++--------------------------------------+ +| [1, 1, 1, 2, 2, 2, null, null, null] | ++--------------------------------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++--------------------------------------+ +| col | ++--------------------------------------+ +| [1, 1, 1, 2, 2, 2, null, null, null] | ++--------------------------------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++--------------------+ +| col | ++--------------------+ +| [1, 1, 1] | +| [2, 2, 2] | +| [null, null, null] | ++--------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++--------------------+ +| col | ++--------------------+ +| [1, 1, 1] | +| [2, 2, 2] | +| [null, null, null] | ++--------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++--------------+ +| col | ++--------------+ +| [1, 2, null] | +| [2, null, 1] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++--------------+ +| col | ++--------------+ +| [1, 2, null] | +| [2, null, 1] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++--------------+ +| col | ++--------------+ +| [1, 2, null] | +| [1, 2, null] | +| [1, 2, null] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++--------------+ +| col | ++--------------+ +| [1, 2, null] | +| [1, 2, null] | +| [1, 2, null] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++--------------------+ +| col | ++--------------------+ +| [1, 1, 1] | +| [2, 2, 2] | +| [null, null, null] | ++--------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++--------------------+ +| col | ++--------------------+ +| [1, 1, 1] | +| [2, 2, 2] | +| [null, null, null] | ++--------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_agg(c) IS NOT NULL; ++--------------------+ +| col | ++--------------------+ +| [1, 1, 1] | +| [2, 2, 2] | +| [null, null, null] | ++--------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_agg(c) IS NOT NULL; ++--------------------+ +| col | ++--------------------+ +| [1, 1, 1] | +| [2, 2, 2] | +| [null, null, null] | ++--------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_agg(c) IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [1, 2, null] | +| [2, null, 1] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_agg(c) IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [1, 2, null] | +| [2, null, 1] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_agg(s_int) IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [1, 2, null] | +| [1, 2, null] | +| [1, 2, null] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_agg(s_int) IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [1, 2, null] | +| [1, 2, null] | +| [1, 2, null] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_agg(s_int) IS NOT NULL; ++--------------------+ +| col | ++--------------------+ +| [1, 1, 1] | +| [2, 2, 2] | +| [null, null, null] | ++--------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_agg(s_int) IS NOT NULL; ++--------------------+ +| col | ++--------------------+ +| [1, 1, 1] | +| [2, 2, 2] | +| [null, null, null] | ++--------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | ++--------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | ++--------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | ++--------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | ++--------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [null] | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [null] | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | +| [null, 1, 2] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | +| [null, 1, 2] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | +| [null, 1, 2] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | +| [null, 1, 2] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [null] | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [null] | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_agg(DISTINCT c) IS NOT NULL; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [null] | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_agg(DISTINCT c) IS NOT NULL; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [null] | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_agg(DISTINCT c) IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | +| [null, 1, 2] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_agg(DISTINCT c) IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | +| [null, 1, 2] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_agg(DISTINCT s_int) IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | +| [null, 1, 2] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_agg(DISTINCT s_int) IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [null, 1, 2] | +| [null, 1, 2] | +| [null, 1, 2] | ++--------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_agg(DISTINCT s_int) IS NOT NULL; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [null] | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_agg(DISTINCT s_int) IS NOT NULL; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [null] | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C1_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C2_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C3_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C3_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C4_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C4_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C5_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C5_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C6_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C6_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C7_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_concat_agg(c) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C7_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_concat_agg(c) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C8_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_concat_agg(c) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C8_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_concat_agg(c) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C9_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_concat_agg(s_int) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C9_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_concat_agg(s_int) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C10_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_concat_agg(s_int) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C10_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_concat_agg(s_int) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C1_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C2_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C3_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C3_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C4_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C4_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C5_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C5_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C6_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C6_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C7_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_concat_agg(DISTINCT c) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C7_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_concat_agg(DISTINCT c) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C8_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_concat_agg(DISTINCT c) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C8_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_concat_agg(DISTINCT c) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C9_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_concat_agg(DISTINCT s_int) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C9_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING array_concat_agg(DISTINCT s_int) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C10_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_concat_agg(DISTINCT s_int) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C10_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING array_concat_agg(DISTINCT s_int) IS NOT NULL; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-------------+ +| col | ++-------------+ +| 1|2|1|2|2|1 | ++-------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-------------+ +| col | ++-------------+ +| 1|2|1|2|2|1 | ++-------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-------------+ +| col | ++-------------+ +| 1|1|1|2|2|2 | ++-------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-------------+ +| col | ++-------------+ +| 1|1|1|2|2|2 | ++-------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | +| | ++-------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | +| | ++-------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 2|1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 2|1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | +| | ++-------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | +| | ++-------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING string_agg(c, '|') IS NOT NULL; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | ++-------+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING string_agg(c, '|') IS NOT NULL; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | ++-------+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING string_agg(c, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 2|1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING string_agg(c, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 2|1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING string_agg(s_int, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING string_agg(s_int, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING string_agg(s_int, '|') IS NOT NULL; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | ++-------+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING string_agg(s_int, '|') IS NOT NULL; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | ++-------+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1|2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1|2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1|2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 1|2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING string_agg(DISTINCT c, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING string_agg(DISTINCT c, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING string_agg(DISTINCT c, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING string_agg(DISTINCT c, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING string_agg(DISTINCT s_int, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING string_agg(DISTINCT s_int, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1|2 | +| 1|2 | +| 1|2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING string_agg(DISTINCT s_int, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING string_agg(DISTINCT s_int, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_and(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_and(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_and(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_and(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_and(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_and(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_and(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_and(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_or(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_or(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_or(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_or(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_or(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_or(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_or(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_or(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C2_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL; ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int; ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C7_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_xor(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C7_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_xor(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C8_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_xor(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C8_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_xor(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C9_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_xor(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C9_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY c +HAVING bit_xor(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C10_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_xor(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C10_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE s_int IN (0, + 1, + 2) + OR s_int IS NULL +GROUP BY s_int +HAVING bit_xor(s_int) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 | +| 2 | ++-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B1_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array[1, + 2, + 3] AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array[1, + 2, + 3]'0'); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(c, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(c, '|')<'0' + OR array_to_string(c, '|')>'0'); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C2_D1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(s_int, '|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(s_int, '|')<'0' + OR array_to_string(s_int, '|')>'0'); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(s_int, '|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(s_int, '|')<'0' + OR array_to_string(s_int, '|')>'0'); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C3_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(array[c, c, 3],'|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(array[c, c, 3],'|')<'0' + OR array_to_string(array[c, c, 3],'|')>'0'); ++-------------+ +| col | ++-------------+ +| 1|1|3 | +| 1|1|3 | +| 1|1|3 | +| 2|2|3 | +| 2|2|3 | +| 2|2|3 | +| null|null|3 | +| null|null|3 | +| null|null|3 | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(array[c, c, 3],'|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(array[c, c, 3],'|')<'0' + OR array_to_string(array[c, c, 3],'|')>'0'); ++-------------+ +| col | ++-------------+ +| 1|1|3 | +| 1|1|3 | +| 1|1|3 | +| 2|2|3 | +| 2|2|3 | +| 2|2|3 | +| null|null|3 | +| null|null|3 | +| null|null|3 | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C4_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(array[s_int, c, 3],'|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(array[s_int, c, 3],'|')<'0' + OR array_to_string(array[s_int, c, 3],'|')>'0'); ++-------------+ +| col | ++-------------+ +| 1|1|3 | +| 1|2|3 | +| 1|null|3 | +| 2|1|3 | +| 2|2|3 | +| 2|null|3 | +| null|1|3 | +| null|2|3 | +| null|null|3 | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(array[s_int, c, 3],'|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(array[s_int, c, 3],'|')<'0' + OR array_to_string(array[s_int, c, 3],'|')>'0'); ++-------------+ +| col | ++-------------+ +| 1|1|3 | +| 1|2|3 | +| 1|null|3 | +| 2|1|3 | +| 2|2|3 | +| 2|null|3 | +| null|1|3 | +| null|2|3 | +| null|null|3 | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C5_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(array[c, s_int, 3],'|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(array[c, s_int, 3],'|')<'0' + OR array_to_string(array[c, s_int, 3],'|')>'0'); ++-------------+ +| col | ++-------------+ +| 1|1|3 | +| 1|2|3 | +| 1|null|3 | +| 2|1|3 | +| 2|2|3 | +| 2|null|3 | +| null|1|3 | +| null|2|3 | +| null|null|3 | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C5_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(array[c, s_int, 3],'|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(array[c, s_int, 3],'|')<'0' + OR array_to_string(array[c, s_int, 3],'|')>'0'); ++-------------+ +| col | ++-------------+ +| 1|1|3 | +| 1|2|3 | +| 1|null|3 | +| 2|1|3 | +| 2|2|3 | +| 2|null|3 | +| null|1|3 | +| null|2|3 | +| null|null|3 | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C6_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(array[s_int, s_int, 3],'|') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(array[s_int, s_int, 3],'|')<'0' + OR array_to_string(array[s_int, s_int, 3],'|')>'0'); ++-------------+ +| col | ++-------------+ +| 1|1|3 | +| 1|1|3 | +| 1|1|3 | +| 2|2|3 | +| 2|2|3 | +| 2|2|3 | +| null|null|3 | +| null|null|3 | +| null|null|3 | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C6_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(array[s_int, s_int, 3],'|') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (array_to_string(array[s_int, s_int, 3],'|')<'0' + OR array_to_string(array[s_int, s_int, 3],'|')>'0'); ++-------------+ +| col | ++-------------+ +| 1|1|3 | +| 1|1|3 | +| 1|1|3 | +| 2|2|3 | +| 2|2|3 | +| 2|2|3 | +| null|null|3 | +| null|null|3 | +| null|null|3 | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B14_C1_D1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_to_array(c, ',') AS col +FROM test_unnest, + unnest(a_int) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (string_to_array(c, '|')0 + OR (bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)))<0 + OR (bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))) IS NULL); ++----------------------+ +| col | ++----------------------+ +| -9223372036854775808 | +| -9223372036854775808 | +| -9223372036854775808 | +| 9214364837600034816 | +| 9214364837600034816 | +| 9214364837600034816 | +| | +| | +| | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B26_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+cast(c AS DOUBLE)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+cast(c AS DOUBLE))>0 + OR bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+cast(c AS DOUBLE))<0 + OR bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+cast(c AS DOUBLE)) IS NULL); ++---------------------+ +| col | ++---------------------+ +| 4611686018427387904 | +| 4611686018427387904 | +| 4611686018427387904 | +| 4616189618054758400 | +| 4616189618054758400 | +| 4616189618054758400 | +| | +| | +| | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B26_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(s_int))>0 + OR (bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(s_int))<0 + OR (bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(s_int)) IS NULL); ++----------------------+ +| col | ++----------------------+ +| -9223372036854775808 | +| 9214364837600034816 | +| 9218868437227405312 | +| 9218868437227405312 | +| | +| | +| | +| | +| | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B26_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+s_int)>0 + OR bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+s_int)<0 + OR bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+s_int) IS NULL); ++---------------------+ +| col | ++---------------------+ +| 4611686018427387904 | +| 4613937818241073152 | +| 4613937818241073152 | +| 4616189618054758400 | +| | +| | +| | +| | +| | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B27_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) +FROM + (SELECT bitwise_convert_long_bits_to_double(c)+bitwise_convert_long_bits_to_double(c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_convert_long_bits_to_double(c)+bitwise_convert_long_bits_to_double(c))<99999 + OR (bitwise_convert_long_bits_to_double(c)+bitwise_convert_long_bits_to_double(c)) IS NULL)); ++--------+ +| EXPR$0 | ++--------+ +| 9 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B27_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) +FROM + (SELECT bitwise_convert_long_bits_to_double(c+c) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_convert_long_bits_to_double(c+c)<99999 + OR bitwise_convert_long_bits_to_double(c+c) IS NULL)); ++--------+ +| EXPR$0 | ++--------+ +| 9 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B27_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) +FROM + (SELECT bitwise_convert_long_bits_to_double(c)+bitwise_convert_long_bits_to_double(s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_convert_long_bits_to_double(c)+bitwise_convert_long_bits_to_double(s_int))<99999 + OR (bitwise_convert_long_bits_to_double(c)+bitwise_convert_long_bits_to_double(s_int)) IS NULL)); ++--------+ +| EXPR$0 | ++--------+ +| 9 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B27_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) +FROM + (SELECT bitwise_convert_long_bits_to_double(c+s_int) AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_convert_long_bits_to_double(c+s_int)<99999 + OR bitwise_convert_long_bits_to_double(c+s_int) IS NULL)); ++--------+ +| EXPR$0 | ++--------+ +| 9 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B28_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_or(c, 1)+bitwise_or(c, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_or(c, 1)+bitwise_or(c, 1))<99999 + OR (bitwise_or(c, 1)+bitwise_or(c, 1)) IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 6 | +| 6 | +| 6 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B28_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_or(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_or(c, c)<99999 + OR bitwise_or(c, c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B28_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_or(c, 1)+bitwise_or(s_int, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_or(c, 1)+bitwise_or(s_int, 1))<99999 + OR (bitwise_or(c, 1)+bitwise_or(s_int, 1)) IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 4 | +| 4 | +| 6 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B28_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_or(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_or(c, s_int)<99999 + OR bitwise_or(c, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| 3 | +| 3 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B29_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_left(c, 1)+bitwise_shift_left(c, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_shift_left(c, 1)+bitwise_shift_left(c, 1))<99999 + OR (bitwise_shift_left(c, 1)+bitwise_shift_left(c, 1)) IS NULL); ++-----+ +| col | ++-----+ +| 4 | +| 4 | +| 4 | +| 8 | +| 8 | +| 8 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B29_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_left(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_shift_left(c, c)<99999 + OR bitwise_shift_left(c, c) IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 8 | +| 8 | +| 8 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B29_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_left(c, 1)+bitwise_shift_left(s_int, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_shift_left(c, 1)+bitwise_shift_left(s_int, 1))<99999 + OR (bitwise_shift_left(c, 1)+bitwise_shift_left(s_int, 1)) IS NULL); ++-----+ +| col | ++-----+ +| 4 | +| 6 | +| 6 | +| 8 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B29_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_left(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_shift_left(c, s_int)<99999 + OR bitwise_shift_left(c, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 4 | +| 4 | +| 8 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B30_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_right(c, 1)+bitwise_shift_right(c, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_shift_right(c, 1)+bitwise_shift_right(c, 1))<99999 + OR (bitwise_shift_right(c, 1)+bitwise_shift_right(c, 1)) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B30_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_right(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_shift_right(c, c)<99999 + OR bitwise_shift_right(c, c) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B30_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_right(c, 1)+bitwise_shift_right(s_int, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_shift_right(c, 1)+bitwise_shift_right(s_int, 1))<99999 + OR (bitwise_shift_right(c, 1)+bitwise_shift_right(s_int, 1)) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | +| 2 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B30_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_right(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_shift_right(c, s_int)<99999 + OR bitwise_shift_right(c, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 1 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B31_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_xor(c, 1)+bitwise_xor(c, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_xor(c, 1)+bitwise_xor(c, 1))<99999 + OR (bitwise_xor(c, 1)+bitwise_xor(c, 1)) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 6 | +| 6 | +| 6 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B31_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_xor(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_xor(c, c)<99999 + OR bitwise_xor(c, c) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B31_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_xor(c, 1)+bitwise_xor(s_int, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((bitwise_xor(c, 1)+bitwise_xor(s_int, 1))<99999 + OR (bitwise_xor(c, 1)+bitwise_xor(s_int, 1)) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 3 | +| 3 | +| 6 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B31_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_xor(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (bitwise_xor(c, s_int)<99999 + OR bitwise_xor(c, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 3 | +| 3 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B33_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_binary_byte_format(c)+human_readable_binary_byte_format(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((human_readable_binary_byte_format(c)+human_readable_binary_byte_format(c))<'99999' + OR (human_readable_binary_byte_format(c)+human_readable_binary_byte_format(c)) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B33_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_binary_byte_format(c+c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (human_readable_binary_byte_format(c+c)<'99999' + OR human_readable_binary_byte_format(c+c) IS NULL); ++-----+ +| col | ++-----+ +| 2 B | +| 2 B | +| 2 B | +| 4 B | +| 4 B | +| 4 B | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B33_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_binary_byte_format(c)+human_readable_binary_byte_format(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((human_readable_binary_byte_format(c)+human_readable_binary_byte_format(s_int))<'99999' + OR (human_readable_binary_byte_format(c)+human_readable_binary_byte_format(s_int)) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B33_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_binary_byte_format(c+s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (human_readable_binary_byte_format(c+s_int)<'99999' + OR human_readable_binary_byte_format(c+s_int) IS NULL); ++-----+ +| col | ++-----+ +| 2 B | +| 3 B | +| 3 B | +| 4 B | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B34_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_byte_format(c)+human_readable_decimal_byte_format(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((human_readable_decimal_byte_format(c)+human_readable_decimal_byte_format(c))<'99999' + OR (human_readable_decimal_byte_format(c)+human_readable_decimal_byte_format(c)) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B34_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_byte_format(c+c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (human_readable_decimal_byte_format(c+c)<'99999' + OR human_readable_decimal_byte_format(c+c) IS NULL); ++-----+ +| col | ++-----+ +| 2 B | +| 2 B | +| 2 B | +| 4 B | +| 4 B | +| 4 B | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B34_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_byte_format(c)+human_readable_decimal_byte_format(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((human_readable_decimal_byte_format(c)+human_readable_decimal_byte_format(s_int))<'99999' + OR (human_readable_decimal_byte_format(c)+human_readable_decimal_byte_format(s_int)) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B34_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_byte_format(c+s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (human_readable_decimal_byte_format(c+s_int)<'99999' + OR human_readable_decimal_byte_format(c+s_int) IS NULL); ++-----+ +| col | ++-----+ +| 2 B | +| 3 B | +| 3 B | +| 4 B | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B35_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_format(c)+human_readable_decimal_format(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((human_readable_decimal_format(c)+human_readable_decimal_format(c))<99999 + OR (human_readable_decimal_format(c)+human_readable_decimal_format(c)) IS NULL); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B35_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_format(c+c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (human_readable_decimal_format(c+c)<99999 + OR human_readable_decimal_format(c+c) IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 4 | +| 4 | +| 4 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B35_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_format(c)+human_readable_decimal_format(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((human_readable_decimal_format(c)+human_readable_decimal_format(s_int))<99999 + OR (human_readable_decimal_format(c)+human_readable_decimal_format(s_int)) IS NULL); ++-----+ +| col | ++-----+ +| 2.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B35_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_format(c+s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (human_readable_decimal_format(c+s_int)<99999 + OR human_readable_decimal_format(c+s_int) IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 3 | +| 3 | +| 4 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B36_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT safe_divide(c, 0)+safe_divide(c, 0) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((safe_divide(c, 0)+safe_divide(c, 0))<99999 + OR (safe_divide(c, 0)+safe_divide(c, 0)) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B36_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT safe_divide(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (safe_divide(c, c)<99999 + OR safe_divide(c, c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B36_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT safe_divide(c, 0)+safe_divide(s_int, 0) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((safe_divide(c, 0)+safe_divide(s_int, 0))<99999 + OR (safe_divide(c, 0)+safe_divide(s_int, 0)) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B36_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT safe_divide(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (safe_divide(c, s_int)<99999 + OR safe_divide(c, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | +| 2 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B1_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT concat(c, c)||concat(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((concat(c, c)||concat(c, c))<'99999' + OR (concat(c, c)||concat(c, c)) IS NULL); ++------+ +| col | ++------+ +| 1111 | +| 1111 | +| 1111 | +| 2222 | +| 2222 | +| 2222 | +| | +| | +| | ++------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B1_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT concat(c, s_int)||concat(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((concat(c, s_int)||concat(c, s_int))<'99999' + OR (concat(c, s_int)||concat(c, s_int)) IS NULL); ++------+ +| col | ++------+ +| 1111 | +| 1212 | +| 2121 | +| 2222 | +| | +| | +| | +| | +| | ++------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B2_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT textcat(cast(c AS char), cast(c AS char))||textcat(cast(c AS char), cast(c AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((textcat(cast(c AS char), cast(c AS char))||textcat(cast(c AS char), cast(c AS char)))<'99999' + OR (textcat(cast(c AS char), cast(c AS char))||textcat(cast(c AS char), cast(c AS char))) IS NULL); ++------+ +| col | ++------+ +| 1111 | +| 1111 | +| 1111 | +| 2222 | +| 2222 | +| 2222 | +| | +| | +| | ++------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B2_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT textcat(cast(c AS char), cast(s_int AS char))||textcat(cast(c AS char), cast(s_int AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((textcat(cast(c AS char), cast(s_int AS char))||textcat(cast(c AS char), cast(s_int AS char)))<'99999' + OR (textcat(cast(c AS char), cast(s_int AS char))||textcat(cast(c AS char), cast(s_int AS char))) IS NULL); ++------+ +| col | ++------+ +| 1111 | +| 1212 | +| 2121 | +| 2222 | +| | +| | +| | +| | +| | ++------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B3_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_format('%sZ', c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (string_format('%sZ', c)<'0' + OR string_format('%sZ', c)>'0' + OR string_format('%sZ', c) IS NULL); ++-------+ +| col | ++-------+ +| 1Z | +| 1Z | +| 1Z | +| 2Z | +| 2Z | +| 2Z | +| nullZ | +| nullZ | +| nullZ | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B3_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_format('%sZ', s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (string_format('%sZ', s_int)<'0' + OR string_format('%sZ', s_int)>'0' + OR string_format('%sZ', s_int) IS NULL); ++-------+ +| col | ++-------+ +| 1Z | +| 1Z | +| 1Z | +| 2Z | +| 2Z | +| 2Z | +| nullZ | +| nullZ | +| nullZ | ++-------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B4_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (length(c)<99999 + OR length(c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B4_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (length(s_int)<99999 + OR length(s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B5_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT char_length(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (char_length(c)<99999 + OR char_length(c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B5_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT char_length(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (char_length(s_int)<99999 + OR char_length(s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B6_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT character_length(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (character_length(c)<99999 + OR character_length(c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B6_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT character_length(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (character_length(s_int)<99999 + OR character_length(s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B7_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strlen(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (strlen(c)<99999 + OR strlen(c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B7_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strlen(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (strlen(s_int)<99999 + OR strlen(s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B8_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT lower(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (lower(c)<'99999' + OR lower(c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B8_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT lower(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (lower(s_int)<'99999' + OR lower(s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B9_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT upper(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (upper(c)<'99999' + OR upper(c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B9_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT upper(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (upper(s_int)<'99999' + OR upper(s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B10_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT parse_long(cast(c AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (parse_long(cast(c AS char))<99999 + OR parse_long(cast(c AS char)) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B10_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT parse_long(cast(s_int AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (parse_long(cast(s_int AS char))<99999 + OR parse_long(cast(s_int AS char)) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B11_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT position(c IN c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (position(c IN c)<99999 + OR position(c IN c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B11_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT position(s_int IN c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (position(s_int IN c)<99999 + OR position(s_int IN c) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B11_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT position(c IN s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (position(c IN s_int)<99999 + OR position(c IN s_int) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B11_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT position(s_int IN s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (position(s_int IN s_int)<99999 + OR position(s_int IN s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B12_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT regexp_extract(cast(c AS char), '.*') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (regexp_extract(cast(c AS char), '.*')<'99999' + OR regexp_extract(cast(c AS char), '.*') IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B12_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT regexp_extract(cast(s_int AS char), '.*') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (regexp_extract(cast(s_int AS char), '.*')<99999 + OR regexp_extract(cast(s_int AS char), '.*') IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B13_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT regexp_like(cast(c AS char), '.*') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (regexp_like(cast(c AS char), '.*') IS TRUE + OR regexp_like(cast(c AS char), '.*') IS FALSE); ++------+ +| col | ++------+ +| true | +| true | +| true | +| true | +| true | +| true | ++------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B13_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT regexp_like(cast(s_int AS char), '.*') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (regexp_like(cast(s_int AS char), '.*') IS TRUE + OR regexp_like(cast(s_int AS char), '.*') IS FALSE); ++------+ +| col | ++------+ +| true | +| true | +| true | +| true | +| true | +| true | ++------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B14_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT contains_string(cast(c AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (contains_string(cast(c AS char), '1') IS TRUE + OR contains_string(cast(c AS char), '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| true | +| true | +| true | ++-------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B14_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT contains_string(cast(s_int AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (contains_string(cast(s_int AS char), '1') IS TRUE + OR contains_string(cast(s_int AS char), '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| true | +| true | +| true | ++-------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B15_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT icontains_string(cast(c AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (icontains_string(cast(c AS char), '1') IS TRUE + OR icontains_string(cast(c AS char), '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| true | +| true | +| true | ++-------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B15_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT icontains_string(cast(s_int AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (icontains_string(cast(s_int AS char), '1') IS TRUE + OR icontains_string(cast(s_int AS char), '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| true | +| true | +| true | ++-------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B16_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT replace(c, '1', 'Z') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (replace(c, '1', 'Z')<'0' + OR replace(c, '1', 'Z')>'0' + OR replace(c, '1', 'Z') IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| Z | +| Z | +| Z | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B16_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT replace(s_int, '1', 'Z') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (replace(s_int, '1', 'Z')<'0' + OR replace(s_int, '1', 'Z')>'0' + OR replace(s_int, '1', 'Z') IS NULL); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| Z | +| Z | +| Z | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B17_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strpos(cast(c AS char), cast(c AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (strpos(cast(c AS char), cast(c AS char))<99999 + OR strpos(cast(c AS char), cast(c AS char)) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B17_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strpos(cast(s_int AS char), cast(c AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (strpos(cast(s_int AS char), cast(c AS char))<99999 + OR strpos(cast(s_int AS char), cast(c AS char)) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B17_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strpos(cast(c AS char), cast(s_int AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (strpos(cast(c AS char), cast(s_int AS char))<99999 + OR strpos(cast(c AS char), cast(s_int AS char)) IS NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 1 | +| 1 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B17_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strpos(cast(s_int AS char), cast(s_int AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (strpos(cast(s_int AS char), cast(s_int AS char))<99999 + OR strpos(cast(s_int AS char), cast(s_int AS char)) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B18_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT substring(cast(c AS char), 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (substring(cast(c AS char), 1)<'99999' + OR substring(cast(c AS char), 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B18_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT substring(cast(s_int AS char), 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (substring(cast(s_int AS char), 1)<'99999' + OR substring(cast(s_int AS char), 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B19_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT right(cast(c AS char), 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (right(cast(c AS char), 1)<'99999' + OR right(cast(c AS char), 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B19_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT right(cast(s_int AS char), 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (right(cast(s_int AS char), 1)<'99999' + OR right(cast(s_int AS char), 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B20_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT left(cast(c AS char), 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (left(cast(c AS char), 1)<'99999' + OR left(cast(c AS char), 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B20_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT left(cast(s_int AS char), 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (left(cast(s_int AS char), 1)<'99999' + OR left(cast(s_int AS char), 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B21_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT substr(cast(c AS char), 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (substr(cast(c AS char), 1)<'99999' + OR substr(cast(c AS char), 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B21_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT substr(cast(s_int AS char), 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (substr(cast(s_int AS char), 1)<'99999' + OR substr(cast(s_int AS char), 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B22_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT trim(BOTH '1' + FROM c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (trim(BOTH '1' + FROM c)<'99999' + OR trim(BOTH '1' + FROM c) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B22_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT trim(BOTH '1' + FROM s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (trim(BOTH '1' + FROM s_int)<'99999' + OR trim(BOTH '1' + FROM s_int) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B23_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT btrim(cast(c AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (btrim(cast(c AS char), '1')<'99999' + OR btrim(cast(c AS char), '1') IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B23_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT btrim(cast(s_int AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (btrim(cast(s_int AS char), '1')<'99999' + OR btrim(cast(s_int AS char), '1') IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B24_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ltrim(cast(c AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ltrim(cast(c AS char), '1')<'99999' + OR ltrim(cast(c AS char), '1') IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B24_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ltrim(cast(s_int AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ltrim(cast(s_int AS char), '1')<'99999' + OR ltrim(cast(s_int AS char), '1') IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B25_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT rtrim(cast(c AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (rtrim(cast(c AS char), '1')<'99999' + OR rtrim(cast(c AS char), '1') IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B25_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT rtrim(cast(s_int AS char), '1') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (rtrim(cast(s_int AS char), '1')<'99999' + OR rtrim(cast(s_int AS char), '1') IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B26_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT reverse(cast(c AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (reverse(cast(c AS char))<'99999' + OR reverse(cast(c AS char)) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B26_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT reverse(cast(s_int AS char)) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (reverse(cast(s_int AS char))<'99999' + OR reverse(cast(s_int AS char)) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B27_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT repeat(cast(c AS char), 2) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (repeat(cast(c AS char), 2)<'99999' + OR repeat(cast(c AS char), 2) IS NULL); ++-----+ +| col | ++-----+ +| 11 | +| 11 | +| 11 | +| 22 | +| 22 | +| 22 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B27_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT repeat(cast(s_int AS char), 2) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (repeat(cast(s_int AS char), 2)<'99999' + OR repeat(cast(s_int AS char), 2) IS NULL); ++-----+ +| col | ++-----+ +| 11 | +| 11 | +| 11 | +| 22 | +| 22 | +| 22 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B28_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT lpad(cast(c AS char), 3, 'Z') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (lpad(cast(c AS char), 3, 'Z')<'0' + OR lpad(cast(c AS char), 3, 'Z')>'0' + OR lpad(cast(c AS char), 3, 'Z') IS NULL); ++-----+ +| col | ++-----+ +| ZZ1 | +| ZZ1 | +| ZZ1 | +| ZZ2 | +| ZZ2 | +| ZZ2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B28_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT lpad(cast(s_int AS char), 3, 'Z') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (lpad(cast(s_int AS char), 3, 'Z')<'0' + OR lpad(cast(s_int AS char), 3, 'Z')>'0' + OR lpad(cast(s_int AS char), 3, 'Z') IS NULL); ++-----+ +| col | ++-----+ +| ZZ1 | +| ZZ1 | +| ZZ1 | +| ZZ2 | +| ZZ2 | +| ZZ2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B29_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT rpad(cast(c AS char), 3, 'Z') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (rpad(cast(c AS char), 3, 'Z')<'0' + OR rpad(cast(c AS char), 3, 'Z')>'0' + OR rpad(cast(c AS char), 3, 'Z') IS NULL); ++-----+ +| col | ++-----+ +| 1ZZ | +| 1ZZ | +| 1ZZ | +| 2ZZ | +| 2ZZ | +| 2ZZ | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B29_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT rpad(cast(s_int AS char), 3, 'Z') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (rpad(cast(s_int AS char), 3, 'Z')<'0' + OR rpad(cast(s_int AS char), 3, 'Z')>'0' + OR rpad(cast(s_int AS char), 3, 'Z') IS NULL); ++-----+ +| col | ++-----+ +| 1ZZ | +| 1ZZ | +| 1ZZ | +| 2ZZ | +| 2ZZ | +| 2ZZ | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B1_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) +FROM + (SELECT CURRENT_TIMESTAMP AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (CURRENT_TIMESTAMP IS NOT NULL)); ++--------+ +| EXPR$0 | ++--------+ +| 9 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B2_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) +FROM + (SELECT CURRENT_DATE AS col + FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) + WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (CURRENT_DATE IS NOT NULL)); ++--------+ +| EXPR$0 | ++--------+ +| 9 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B3_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT date_trunc('year', c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (date_trunc('year', c) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B3_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT date_trunc('year', s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (date_trunc('year', s_int) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B4_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_ceil(c, 'P1D') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_ceil(c, 'P1D') IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B4_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_ceil(s_int, 'P1D') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_ceil(s_int, 'P1D') IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B5_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_floor(c, 'P1D') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_floor(c, 'P1D') IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B5_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_floor(s_int, 'P1D') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_floor(s_int, 'P1D') IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B6_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_shift(c, 'P1D', 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_shift(c, 'P1D', 1) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B6_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_shift(s_int, 'P1D', 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_shift(s_int, 'P1D', 1) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B7_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_extract(c, 'HOUR') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_extract(c, 'HOUR') IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B7_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_extract(s_int, 'HOUR') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_extract(s_int, 'HOUR') IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B8_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_parse(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_parse(c) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B8_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_parse(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_parse(s_int) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B9_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_in_interval(c, '2001-01-01/P1D') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_in_interval(c, '2001-01-01/P1D') IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B9_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_in_interval(s_int, '2001-01-01/P1D') AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (time_in_interval(c, '2001-01-01/P1D') IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B10_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT millis_to_timestamp(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (millis_to_timestamp(c)<>'2000-01-01T00:00:00.000Z'); ++-------------------------+ +| col | ++-------------------------+ +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | ++-------------------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B10_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT millis_to_timestamp(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (millis_to_timestamp(s_int)<>'2000-01-01T00:00:00.000Z'); ++-------------------------+ +| col | ++-------------------------+ +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | ++-------------------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B11_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestamp_to_millis(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (timestamp_to_millis(c) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B11_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestamp_to_millis(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (timestamp_to_millis(s_int) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B12_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT extract(DAY + FROM c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (extract(DAY + FROM c) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B12_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT extract(DAY + FROM s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (extract(DAY + FROM s_int) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B13_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT floor(c TO DAY) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (floor(c TO DAY) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B13_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT floor(s_int TO DAY) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (floor(s_int TO DAY) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B14_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ceil(c TO DAY) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ceil(c TO DAY) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B14_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ceil(s_int TO DAY) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ceil(s_int TO DAY) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B15_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampadd(DAY, 1, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (timestampadd(DAY, 1, c) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B15_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampadd(DAY, 1, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (timestampadd(DAY, 1, s_int) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B16_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampdiff(DAY, c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (timestampdiff(DAY, c, c) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B16_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampdiff(DAY, s_int, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (timestampdiff(DAY, s_int, c) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B16_C3_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampdiff(DAY, c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (timestampdiff(DAY, c, s_int) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B16_C4_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampdiff(DAY, s_int, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (timestampdiff(DAY, s_int, s_int) IS NOT NULL); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_reduction_funcs TEST_ID: A1_B1_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT greatest(c, c, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (greatest(c, c, 1)<99999 + OR greatest(c, c, 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_reduction_funcs TEST_ID: A1_B1_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT greatest(c, s_int, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (greatest(c, s_int, 1)<99999 + OR greatest(c, s_int, 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_reduction_funcs TEST_ID: A1_B2_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT least(c, c, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (least(c, c, 1)<99999 + OR least(c, c, 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_reduction_funcs TEST_ID: A1_B2_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT least(c, s_int, 1) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (least(c, s_int, 1)<99999 + OR least(c, s_int, 1) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B1_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_match(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ip4_match(c, c) IS NOT NULL); +No match found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B1_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_match(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ip4_match(c, s_int) IS TRUE); +No match found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B2_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_parse(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ip4_parse(c) IS NOT NULL); +No match found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B2_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_parse(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ip4_parse(s_int) IS NOT NULL); +No match found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B3_C1_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_stringify(c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ip4_stringify(c) IS NOT NULL); +No match found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B3_C2_D2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_stringify(s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (ip4_stringify(s_int) IS NOT NULL); +No match found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B1_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(c AS char) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (cast(c AS char)<99999 + OR cast(c AS char) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B1_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(s_int AS char) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (cast(s_int AS char)<99999 + OR cast(s_int AS char) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B2_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (CASE c + WHEN 1 THEN 6 + ELSE 7 + END) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((CASE c + WHEN 1 THEN 6 + ELSE 7 + END)<99999 + OR (CASE c + WHEN 1 THEN 6 + ELSE 7 + END) IS NULL); ++-----+ +| col | ++-----+ +| 6 | +| 6 | +| 6 | +| 7 | +| 7 | +| 7 | +| 7 | +| 7 | +| 7 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B2_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (CASE s_int + WHEN 1 THEN 8 + ELSE 9 + END) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((CASE s_int + WHEN 1 THEN 8 + ELSE 9 + END)<99999 + OR (CASE s_int + WHEN 1 THEN 8 + ELSE 9 + END) IS NULL); ++-----+ +| col | ++-----+ +| 8 | +| 8 | +| 8 | +| 9 | +| 9 | +| 9 | +| 9 | +| 9 | +| 9 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B3_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (CASE + WHEN c=1 THEN 6 + ELSE 7 + END) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((CASE + WHEN c=1 THEN 6 + ELSE 7 + END)<99999 + OR (CASE + WHEN c=1 THEN 6 + ELSE 7 + END) IS NULL); ++-----+ +| col | ++-----+ +| 6 | +| 6 | +| 6 | +| 7 | +| 7 | +| 7 | +| 7 | +| 7 | +| 7 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B3_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (CASE + WHEN s_int=1 THEN 8 + ELSE 9 + END) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND ((CASE + WHEN s_int=1 THEN 8 + ELSE 9 + END)<99999 + OR (CASE + WHEN s_int=1 THEN 8 + ELSE 9 + END) IS NULL); ++-----+ +| col | ++-----+ +| 8 | +| 8 | +| 8 | +| 9 | +| 9 | +| 9 | +| 9 | +| 9 | +| 9 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B4_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nullif(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (nullif(c, c)<99999 + OR nullif(c, c) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B4_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nullif(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (nullif(c, s_int)<99999 + OR nullif(c, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B4_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nullif(s_int, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (nullif(s_int, c)<99999 + OR nullif(s_int, c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 2 | +| 2 | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B4_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nullif(s_int, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (nullif(s_int, s_int)<99999 + OR nullif(s_int, s_int) IS NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B5_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT coalesce(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (coalesce(c, c)<99999 + OR coalesce(c, c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B5_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT coalesce(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (coalesce(c, s_int)<99999 + OR coalesce(c, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B5_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT coalesce(s_int, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (coalesce(s_int, c)<99999 + OR coalesce(s_int, c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B5_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT coalesce(s_int, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (coalesce(s_int, s_int)<99999 + OR coalesce(s_int, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B6_C1_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nvl(c, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (nvl(c, c)<99999 + OR nvl(c, c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B6_C2_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nvl(c, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (nvl(c, s_int)<99999 + OR nvl(c, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B6_C3_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nvl(s_int, c) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (nvl(s_int, c)<99999 + OR nvl(s_int, c) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B6_C4_D2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nvl(s_int, s_int) AS col +FROM test_unnest, + unnest(json_value(a_nested, '$[1]' RETURNING bigint array)) AS u(c) +WHERE (s_int IN (0, + 1, + 2) + OR s_int IS NULL) + AND (nvl(s_int, s_int)<99999 + OR nvl(s_int, s_int) IS NULL); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| | +| | +| | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# Total query count 261 Positive tests: 227 Negative tests: 34 +#------------------------------------------------------------------------- diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql.iq new file mode 100644 index 000000000000..e13cd4d38fae --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql.iq @@ -0,0 +1,21585 @@ +!set useApproximateCountDistinct false +!use druidtest://?componentSupplier=StandardComponentSupplier&datasets=sql/src/test/quidem/qatests/qaUnnest/mv&numMergeBuffers=3 +!set outputformat mysql +SELECT * +FROM test_unnest; ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| __time | c_str | c_long | c_float | c_double | c_mv_complex | c_mv_num | c_mv_complex_with_null_and_empty_val | c_mv_num_with_null_and_empty_val | c_mv_complex_with_null_and_empty_row | c_mv_num_with_null_and_empty_row | c_mv_all_null_and_empty_val | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(doesnt_exist) AS u(c); +not found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(doesnt_exist) AS u(c) +GROUP BY c; +not found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(doesnt_exist)) AS u(c); +not found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(doesnt_exist)) AS u(c) +GROUP BY c; +not found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT * +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c_mv_complex); +is ambiguous +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B6 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT * +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c_mv_complex) +GROUP BY c; +is ambiguous +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str0 +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c_str); +not found in any table +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT u.c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c_str); ++-------------+ +| c_str | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c_str)); ++--------+ +| EXPR$0 | ++--------+ +| 25 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str0 +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c_str)); ++-------------+ +| c_str0 | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B11 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT u.c_str +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c_str)); +not found +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str0, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c_str) +GROUP BY c_str0; +not found in any table +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT u.c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c_str) +GROUP BY u.c_str; ++-------------+-----+ +| c_str | cnt | ++-------------+-----+ +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| my_empty | 5 | +| my_null | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + strlen(unnest(mv_to_array(c_mv_complex))) AS u(c); +ParseException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + strlen(unnest(mv_to_array(c_mv_complex))) AS u(c) +GROUP BY c; +ParseException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex || 'STR')) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex || 'STR')) AS u(c) +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(mv_concat(c_mv_complex, c_mv_complex))) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(mv_concat(c_mv_complex, c_mv_complex))) AS u(c) +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c || 'STR') col +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++----------------+ +| col | ++----------------+ +| 1STR | +| 1STR | +| 1STR | +| 1STR | +| 1STR | +| [2]STR | +| [2]STR | +| [2]STR | +| [2]STR | +| [2]STR | +| [3, [4, 5]]STR | +| [3, [4, 5]]STR | +| [3, [4, 5]]STR | +| [3, [4, 5]]STR | +| [3, [4, 5]]STR | +| my_emptySTR | +| my_emptySTR | +| my_emptySTR | +| my_emptySTR | +| my_emptySTR | +| my_nullSTR | +| my_nullSTR | +| my_nullSTR | +| my_nullSTR | +| my_nullSTR | ++----------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c || 'STR') col +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c; ++----------------+ +| col | ++----------------+ +| 1STR | +| [2]STR | +| [3, [4, 5]]STR | +| my_emptySTR | +| my_nullSTR | ++----------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c) col +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 11 | +| 11 | +| 11 | +| 11 | +| 11 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | +| 7 | +| 7 | +| 7 | +| 7 | +| 7 | +| 8 | +| 8 | +| 8 | +| 8 | +| 8 | ++-----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c) col +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c; ++-----+ +| col | ++-----+ +| 1 | +| 11 | +| 3 | +| 7 | +| 8 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c || 'STR') col +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-----+ +| col | ++-----+ +| 10 | +| 10 | +| 10 | +| 10 | +| 10 | +| 11 | +| 11 | +| 11 | +| 11 | +| 11 | +| 14 | +| 14 | +| 14 | +| 14 | +| 14 | +| 4 | +| 4 | +| 4 | +| 4 | +| 4 | +| 6 | +| 6 | +| 6 | +| 6 | +| 6 | ++-----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c || 'STR') col +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c; ++-----+ +| col | ++-----+ +| 10 | +| 11 | +| 14 | +| 4 | +| 6 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c || c) col +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-----+ +| col | ++-----+ +| 14 | +| 14 | +| 14 | +| 14 | +| 14 | +| 16 | +| 16 | +| 16 | +| 16 | +| 16 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 22 | +| 22 | +| 22 | +| 22 | +| 22 | +| 6 | +| 6 | +| 6 | +| 6 | +| 6 | ++-----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c || c) col +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c; ++-----+ +| col | ++-----+ +| 14 | +| 16 | +| 2 | +| 22 | +| 6 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B28 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c, + c_mv_complex AS new_col +FROM test_unnest, + unnest(mv_to_array(new_col)) AS u(c); +not found in any table +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c_mv_complex AS new_col + FROM test_unnest) t1, + unnest(mv_to_array(new_col)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_general TEST_ID: A1_B30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c AS new_col +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| new_col | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_str) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_str) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_long) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_long) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_float) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_float) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_double) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_double) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_complex) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_complex) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_num) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_num) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_complex_with_null_and_empty_val) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_complex_with_null_and_empty_val) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_num_with_null_and_empty_val) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_num_with_null_and_empty_val) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_complex_with_null_and_empty_row) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_complex_with_null_and_empty_row) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_num_with_null_and_empty_row) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_num_with_null_and_empty_row) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_all_null_and_empty_val) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(c_mv_all_null_and_empty_val) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A2_B1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_append(c_mv_complex, 'Z')) AS u(c); +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A2_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_append(c_mv_complex, 'Z')) AS u(c) +GROUP BY c; +Cannot apply +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | +| | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | +| | ++---+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | +| | ++-------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A8_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | +| | ++---+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A8_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A9_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_col_datatype_mv TEST_ID: A9_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_explain TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- + +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +{ + "queryType" : "scan", + "dataSource" : { + "type" : "unnest", + "base" : { + "type" : "table", + "name" : "test_unnest" + }, + "virtualColumn" : { + "type" : "expression", + "name" : "j0.unnest", + "expression" : "\"c_mv_complex\"", + "outputType" : "STRING" + }, + "unnestFilter" : null + }, + "intervals" : { + "type" : "intervals", + "intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ] + }, + "resultFormat" : "compactedList", + "columns" : [ "j0.unnest" ], + "columnTypes" : [ "STRING" ], + "granularity" : { + "type" : "all" + }, + "legacy" : false +} +!nativePlan + +#------------------------------------------------------------------------- +# TESTCASE: test_explain TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- + +SELECT * +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)); ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+-------------+ +| __time | c_str | c_long | c_float | c_double | c_mv_complex | c_mv_num | c_mv_complex_with_null_and_empty_val | c_mv_num_with_null_and_empty_val | c_mv_complex_with_null_and_empty_row | c_mv_num_with_null_and_empty_row | c_mv_all_null_and_empty_val | c | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+-------------+ +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | 1 | +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | [2] | +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | [3, [4, 5]] | +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | my_empty | +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | my_null | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | 1 | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | [2] | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | [3, [4, 5]] | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | my_empty | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | my_null | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | 1 | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | [2] | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | [3, [4, 5]] | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | my_empty | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | my_null | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | 1 | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | [2] | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | [3, [4, 5]] | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | my_empty | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | my_null | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | 1 | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | [2] | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | [3, [4, 5]] | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | my_empty | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | my_null | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+-------------+ +(25 rows) + +!ok + +{ + "queryType" : "scan", + "dataSource" : { + "type" : "unnest", + "base" : { + "type" : "table", + "name" : "test_unnest" + }, + "virtualColumn" : { + "type" : "expression", + "name" : "j0.unnest", + "expression" : "\"c_mv_complex\"", + "outputType" : "STRING" + }, + "unnestFilter" : null + }, + "intervals" : { + "type" : "intervals", + "intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ] + }, + "resultFormat" : "compactedList", + "columns" : [ "__time", "c_str", "c_long", "c_float", "c_double", "c_mv_complex", "c_mv_num", "c_mv_complex_with_null_and_empty_val", "c_mv_num_with_null_and_empty_val", "c_mv_complex_with_null_and_empty_row", "c_mv_num_with_null_and_empty_row", "c_mv_all_null_and_empty_val", "j0.unnest" ], + "columnTypes" : [ "LONG", "STRING", "LONG", "FLOAT", "DOUBLE", "STRING", "STRING", "STRING", "STRING", "STRING", "STRING", "STRING", "STRING" ], + "granularity" : { + "type" : "all" + }, + "legacy" : false +} +!nativePlan + +#------------------------------------------------------------------------- +# TESTCASE: test_explain TEST_ID: A1_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- + +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| my_empty | 5 | +| my_null | 5 | ++-------------+-----+ +(5 rows) + +!ok + +{ + "queryType" : "groupBy", + "dataSource" : { + "type" : "unnest", + "base" : { + "type" : "table", + "name" : "test_unnest" + }, + "virtualColumn" : { + "type" : "expression", + "name" : "j0.unnest", + "expression" : "\"c_mv_complex\"", + "outputType" : "STRING" + }, + "unnestFilter" : null + }, + "intervals" : { + "type" : "intervals", + "intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ] + }, + "granularity" : { + "type" : "all" + }, + "dimensions" : [ { + "type" : "default", + "dimension" : "j0.unnest", + "outputName" : "d0", + "outputType" : "STRING" + } ], + "aggregations" : [ { + "type" : "count", + "name" : "a0" + } ], + "limitSpec" : { + "type" : "NoopLimitSpec" + } +} +!nativePlan + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-----+ +| cnt | ++-----+ +| 25 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-----+ +| cnt | ++-----+ +| 25 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A1_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c); ++-----+ +| cnt | ++-----+ +| 25 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c); ++-----+ +| cnt | ++-----+ +| 25 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A2_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-----+ +| cnt | ++-----+ +| 25 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-----+ +| cnt | ++-----+ +| 20 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A3_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-----+ +| cnt | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++-----+ +| cnt | ++-----+ +| 25 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++-----+ +| cnt | ++-----+ +| 20 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A4_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++-----+ +| cnt | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++-----+ +| cnt | ++-----+ +| 25 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++-----+ +| cnt | ++-----+ +| 10 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_count TEST_ID: A5_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_select_distinct TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT DISTINCT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u1(c1), + unnest(mv_to_array(c_mv_complex)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('my_null', + 'my_empty', + '1', + '[2]', + '[3, [4, 5]]')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+-------------+-------------+ +| c_long | c1 | c2 | ++--------+-------------+-------------+ +| 0 | 1 | 1 | +| 0 | 1 | [2] | +| 0 | 1 | [3, [4, 5]] | +| 0 | 1 | my_empty | +| 0 | 1 | my_null | +| 0 | [2] | 1 | +| 0 | [2] | [2] | +| 0 | [2] | [3, [4, 5]] | +| 0 | [2] | my_empty | +| 0 | [2] | my_null | +| 0 | [3, [4, 5]] | 1 | +| 0 | [3, [4, 5]] | [2] | +| 0 | [3, [4, 5]] | [3, [4, 5]] | +| 0 | [3, [4, 5]] | my_empty | +| 0 | [3, [4, 5]] | my_null | +| 0 | my_empty | 1 | +| 0 | my_empty | [2] | +| 0 | my_empty | [3, [4, 5]] | +| 0 | my_empty | my_empty | +| 0 | my_empty | my_null | +| 0 | my_null | 1 | +| 0 | my_null | [2] | +| 0 | my_null | [3, [4, 5]] | +| 0 | my_null | my_empty | +| 0 | my_null | my_null | +| 1 | 1 | 1 | +| 1 | 1 | [2] | +| 1 | 1 | [3, [4, 5]] | +| 1 | 1 | my_empty | +| 1 | 1 | my_null | +| 1 | [2] | 1 | +| 1 | [2] | [2] | +| 1 | [2] | [3, [4, 5]] | +| 1 | [2] | my_empty | +| 1 | [2] | my_null | +| 1 | [3, [4, 5]] | 1 | +| 1 | [3, [4, 5]] | [2] | +| 1 | [3, [4, 5]] | [3, [4, 5]] | +| 1 | [3, [4, 5]] | my_empty | +| 1 | [3, [4, 5]] | my_null | +| 1 | my_empty | 1 | +| 1 | my_empty | [2] | +| 1 | my_empty | [3, [4, 5]] | +| 1 | my_empty | my_empty | +| 1 | my_empty | my_null | +| 1 | my_null | 1 | +| 1 | my_null | [2] | +| 1 | my_null | [3, [4, 5]] | +| 1 | my_null | my_empty | +| 1 | my_null | my_null | +| 2 | 1 | 1 | +| 2 | 1 | [2] | +| 2 | 1 | [3, [4, 5]] | +| 2 | 1 | my_empty | +| 2 | 1 | my_null | +| 2 | [2] | 1 | +| 2 | [2] | [2] | +| 2 | [2] | [3, [4, 5]] | +| 2 | [2] | my_empty | +| 2 | [2] | my_null | +| 2 | [3, [4, 5]] | 1 | +| 2 | [3, [4, 5]] | [2] | +| 2 | [3, [4, 5]] | [3, [4, 5]] | +| 2 | [3, [4, 5]] | my_empty | +| 2 | [3, [4, 5]] | my_null | +| 2 | my_empty | 1 | +| 2 | my_empty | [2] | +| 2 | my_empty | [3, [4, 5]] | +| 2 | my_empty | my_empty | +| 2 | my_empty | my_null | +| 2 | my_null | 1 | +| 2 | my_null | [2] | +| 2 | my_null | [3, [4, 5]] | +| 2 | my_null | my_empty | +| 2 | my_null | my_null | +| 3 | 1 | 1 | +| 3 | 1 | [2] | +| 3 | 1 | [3, [4, 5]] | +| 3 | 1 | my_empty | +| 3 | 1 | my_null | +| 3 | [2] | 1 | +| 3 | [2] | [2] | +| 3 | [2] | [3, [4, 5]] | +| 3 | [2] | my_empty | +| 3 | [2] | my_null | +| 3 | [3, [4, 5]] | 1 | +| 3 | [3, [4, 5]] | [2] | +| 3 | [3, [4, 5]] | [3, [4, 5]] | +| 3 | [3, [4, 5]] | my_empty | +| 3 | [3, [4, 5]] | my_null | +| 3 | my_empty | 1 | +| 3 | my_empty | [2] | +| 3 | my_empty | [3, [4, 5]] | +| 3 | my_empty | my_empty | +| 3 | my_empty | my_null | +| 3 | my_null | 1 | +| 3 | my_null | [2] | +| 3 | my_null | [3, [4, 5]] | +| 3 | my_null | my_empty | +| 3 | my_null | my_null | +| 4 | 1 | 1 | +| 4 | 1 | [2] | +| 4 | 1 | [3, [4, 5]] | +| 4 | 1 | my_empty | +| 4 | 1 | my_null | +| 4 | [2] | 1 | +| 4 | [2] | [2] | +| 4 | [2] | [3, [4, 5]] | +| 4 | [2] | my_empty | +| 4 | [2] | my_null | +| 4 | [3, [4, 5]] | 1 | +| 4 | [3, [4, 5]] | [2] | +| 4 | [3, [4, 5]] | [3, [4, 5]] | +| 4 | [3, [4, 5]] | my_empty | +| 4 | [3, [4, 5]] | my_null | +| 4 | my_empty | 1 | +| 4 | my_empty | [2] | +| 4 | my_empty | [3, [4, 5]] | +| 4 | my_empty | my_empty | +| 4 | my_empty | my_null | +| 4 | my_null | 1 | +| 4 | my_null | [2] | +| 4 | my_null | [3, [4, 5]] | +| 4 | my_null | my_empty | +| 4 | my_null | my_null | ++--------+-------------+-------------+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u1(c1)), unnest(mv_to_array(c_mv_complex)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('my_null', + 'my_empty', + '1', + '[2]', + '[3, [4, 5]]')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+-------------+-------------+ +| c_long | c1 | c2 | ++--------+-------------+-------------+ +| 0 | 1 | 1 | +| 0 | 1 | [2] | +| 0 | 1 | [3, [4, 5]] | +| 0 | 1 | my_empty | +| 0 | 1 | my_null | +| 0 | [2] | 1 | +| 0 | [2] | [2] | +| 0 | [2] | [3, [4, 5]] | +| 0 | [2] | my_empty | +| 0 | [2] | my_null | +| 0 | [3, [4, 5]] | 1 | +| 0 | [3, [4, 5]] | [2] | +| 0 | [3, [4, 5]] | [3, [4, 5]] | +| 0 | [3, [4, 5]] | my_empty | +| 0 | [3, [4, 5]] | my_null | +| 0 | my_empty | 1 | +| 0 | my_empty | [2] | +| 0 | my_empty | [3, [4, 5]] | +| 0 | my_empty | my_empty | +| 0 | my_empty | my_null | +| 0 | my_null | 1 | +| 0 | my_null | [2] | +| 0 | my_null | [3, [4, 5]] | +| 0 | my_null | my_empty | +| 0 | my_null | my_null | +| 1 | 1 | 1 | +| 1 | 1 | [2] | +| 1 | 1 | [3, [4, 5]] | +| 1 | 1 | my_empty | +| 1 | 1 | my_null | +| 1 | [2] | 1 | +| 1 | [2] | [2] | +| 1 | [2] | [3, [4, 5]] | +| 1 | [2] | my_empty | +| 1 | [2] | my_null | +| 1 | [3, [4, 5]] | 1 | +| 1 | [3, [4, 5]] | [2] | +| 1 | [3, [4, 5]] | [3, [4, 5]] | +| 1 | [3, [4, 5]] | my_empty | +| 1 | [3, [4, 5]] | my_null | +| 1 | my_empty | 1 | +| 1 | my_empty | [2] | +| 1 | my_empty | [3, [4, 5]] | +| 1 | my_empty | my_empty | +| 1 | my_empty | my_null | +| 1 | my_null | 1 | +| 1 | my_null | [2] | +| 1 | my_null | [3, [4, 5]] | +| 1 | my_null | my_empty | +| 1 | my_null | my_null | +| 2 | 1 | 1 | +| 2 | 1 | [2] | +| 2 | 1 | [3, [4, 5]] | +| 2 | 1 | my_empty | +| 2 | 1 | my_null | +| 2 | [2] | 1 | +| 2 | [2] | [2] | +| 2 | [2] | [3, [4, 5]] | +| 2 | [2] | my_empty | +| 2 | [2] | my_null | +| 2 | [3, [4, 5]] | 1 | +| 2 | [3, [4, 5]] | [2] | +| 2 | [3, [4, 5]] | [3, [4, 5]] | +| 2 | [3, [4, 5]] | my_empty | +| 2 | [3, [4, 5]] | my_null | +| 2 | my_empty | 1 | +| 2 | my_empty | [2] | +| 2 | my_empty | [3, [4, 5]] | +| 2 | my_empty | my_empty | +| 2 | my_empty | my_null | +| 2 | my_null | 1 | +| 2 | my_null | [2] | +| 2 | my_null | [3, [4, 5]] | +| 2 | my_null | my_empty | +| 2 | my_null | my_null | +| 3 | 1 | 1 | +| 3 | 1 | [2] | +| 3 | 1 | [3, [4, 5]] | +| 3 | 1 | my_empty | +| 3 | 1 | my_null | +| 3 | [2] | 1 | +| 3 | [2] | [2] | +| 3 | [2] | [3, [4, 5]] | +| 3 | [2] | my_empty | +| 3 | [2] | my_null | +| 3 | [3, [4, 5]] | 1 | +| 3 | [3, [4, 5]] | [2] | +| 3 | [3, [4, 5]] | [3, [4, 5]] | +| 3 | [3, [4, 5]] | my_empty | +| 3 | [3, [4, 5]] | my_null | +| 3 | my_empty | 1 | +| 3 | my_empty | [2] | +| 3 | my_empty | [3, [4, 5]] | +| 3 | my_empty | my_empty | +| 3 | my_empty | my_null | +| 3 | my_null | 1 | +| 3 | my_null | [2] | +| 3 | my_null | [3, [4, 5]] | +| 3 | my_null | my_empty | +| 3 | my_null | my_null | +| 4 | 1 | 1 | +| 4 | 1 | [2] | +| 4 | 1 | [3, [4, 5]] | +| 4 | 1 | my_empty | +| 4 | 1 | my_null | +| 4 | [2] | 1 | +| 4 | [2] | [2] | +| 4 | [2] | [3, [4, 5]] | +| 4 | [2] | my_empty | +| 4 | [2] | my_null | +| 4 | [3, [4, 5]] | 1 | +| 4 | [3, [4, 5]] | [2] | +| 4 | [3, [4, 5]] | [3, [4, 5]] | +| 4 | [3, [4, 5]] | my_empty | +| 4 | [3, [4, 5]] | my_null | +| 4 | my_empty | 1 | +| 4 | my_empty | [2] | +| 4 | my_empty | [3, [4, 5]] | +| 4 | my_empty | my_empty | +| 4 | my_empty | my_null | +| 4 | my_null | 1 | +| 4 | my_null | [2] | +| 4 | my_null | [3, [4, 5]] | +| 4 | my_null | my_empty | +| 4 | my_null | my_null | ++--------+-------------+-------------+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A1_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u1(c1)) +SELECT c_long, + c1, + c2 +FROM t1, + unnest(mv_to_array(c_mv_complex)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('my_null', + 'my_empty', + '1', + '[2]', + '[3, [4, 5]]')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+-------------+-------------+ +| c_long | c1 | c2 | ++--------+-------------+-------------+ +| 0 | 1 | 1 | +| 0 | 1 | [2] | +| 0 | 1 | [3, [4, 5]] | +| 0 | 1 | my_empty | +| 0 | 1 | my_null | +| 0 | [2] | 1 | +| 0 | [2] | [2] | +| 0 | [2] | [3, [4, 5]] | +| 0 | [2] | my_empty | +| 0 | [2] | my_null | +| 0 | [3, [4, 5]] | 1 | +| 0 | [3, [4, 5]] | [2] | +| 0 | [3, [4, 5]] | [3, [4, 5]] | +| 0 | [3, [4, 5]] | my_empty | +| 0 | [3, [4, 5]] | my_null | +| 0 | my_empty | 1 | +| 0 | my_empty | [2] | +| 0 | my_empty | [3, [4, 5]] | +| 0 | my_empty | my_empty | +| 0 | my_empty | my_null | +| 0 | my_null | 1 | +| 0 | my_null | [2] | +| 0 | my_null | [3, [4, 5]] | +| 0 | my_null | my_empty | +| 0 | my_null | my_null | +| 1 | 1 | 1 | +| 1 | 1 | [2] | +| 1 | 1 | [3, [4, 5]] | +| 1 | 1 | my_empty | +| 1 | 1 | my_null | +| 1 | [2] | 1 | +| 1 | [2] | [2] | +| 1 | [2] | [3, [4, 5]] | +| 1 | [2] | my_empty | +| 1 | [2] | my_null | +| 1 | [3, [4, 5]] | 1 | +| 1 | [3, [4, 5]] | [2] | +| 1 | [3, [4, 5]] | [3, [4, 5]] | +| 1 | [3, [4, 5]] | my_empty | +| 1 | [3, [4, 5]] | my_null | +| 1 | my_empty | 1 | +| 1 | my_empty | [2] | +| 1 | my_empty | [3, [4, 5]] | +| 1 | my_empty | my_empty | +| 1 | my_empty | my_null | +| 1 | my_null | 1 | +| 1 | my_null | [2] | +| 1 | my_null | [3, [4, 5]] | +| 1 | my_null | my_empty | +| 1 | my_null | my_null | +| 2 | 1 | 1 | +| 2 | 1 | [2] | +| 2 | 1 | [3, [4, 5]] | +| 2 | 1 | my_empty | +| 2 | 1 | my_null | +| 2 | [2] | 1 | +| 2 | [2] | [2] | +| 2 | [2] | [3, [4, 5]] | +| 2 | [2] | my_empty | +| 2 | [2] | my_null | +| 2 | [3, [4, 5]] | 1 | +| 2 | [3, [4, 5]] | [2] | +| 2 | [3, [4, 5]] | [3, [4, 5]] | +| 2 | [3, [4, 5]] | my_empty | +| 2 | [3, [4, 5]] | my_null | +| 2 | my_empty | 1 | +| 2 | my_empty | [2] | +| 2 | my_empty | [3, [4, 5]] | +| 2 | my_empty | my_empty | +| 2 | my_empty | my_null | +| 2 | my_null | 1 | +| 2 | my_null | [2] | +| 2 | my_null | [3, [4, 5]] | +| 2 | my_null | my_empty | +| 2 | my_null | my_null | +| 3 | 1 | 1 | +| 3 | 1 | [2] | +| 3 | 1 | [3, [4, 5]] | +| 3 | 1 | my_empty | +| 3 | 1 | my_null | +| 3 | [2] | 1 | +| 3 | [2] | [2] | +| 3 | [2] | [3, [4, 5]] | +| 3 | [2] | my_empty | +| 3 | [2] | my_null | +| 3 | [3, [4, 5]] | 1 | +| 3 | [3, [4, 5]] | [2] | +| 3 | [3, [4, 5]] | [3, [4, 5]] | +| 3 | [3, [4, 5]] | my_empty | +| 3 | [3, [4, 5]] | my_null | +| 3 | my_empty | 1 | +| 3 | my_empty | [2] | +| 3 | my_empty | [3, [4, 5]] | +| 3 | my_empty | my_empty | +| 3 | my_empty | my_null | +| 3 | my_null | 1 | +| 3 | my_null | [2] | +| 3 | my_null | [3, [4, 5]] | +| 3 | my_null | my_empty | +| 3 | my_null | my_null | +| 4 | 1 | 1 | +| 4 | 1 | [2] | +| 4 | 1 | [3, [4, 5]] | +| 4 | 1 | my_empty | +| 4 | 1 | my_null | +| 4 | [2] | 1 | +| 4 | [2] | [2] | +| 4 | [2] | [3, [4, 5]] | +| 4 | [2] | my_empty | +| 4 | [2] | my_null | +| 4 | [3, [4, 5]] | 1 | +| 4 | [3, [4, 5]] | [2] | +| 4 | [3, [4, 5]] | [3, [4, 5]] | +| 4 | [3, [4, 5]] | my_empty | +| 4 | [3, [4, 5]] | my_null | +| 4 | my_empty | 1 | +| 4 | my_empty | [2] | +| 4 | my_empty | [3, [4, 5]] | +| 4 | my_empty | my_empty | +| 4 | my_empty | my_null | +| 4 | my_null | 1 | +| 4 | my_null | [2] | +| 4 | my_null | [3, [4, 5]] | +| 4 | my_null | my_empty | +| 4 | my_null | my_null | ++--------+-------------+-------------+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u1(c1), + unnest(mv_to_array(c_mv_num)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('-1', + '0', + '1', + '2', + '3')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | -1 | -1 | +| 0 | -1 | 0 | +| 0 | -1 | 1 | +| 0 | -1 | 2 | +| 0 | -1 | 3 | +| 0 | 0 | -1 | +| 0 | 0 | 0 | +| 0 | 0 | 1 | +| 0 | 0 | 2 | +| 0 | 0 | 3 | +| 0 | 1 | -1 | +| 0 | 1 | 0 | +| 0 | 1 | 1 | +| 0 | 1 | 2 | +| 0 | 1 | 3 | +| 0 | 2 | -1 | +| 0 | 2 | 0 | +| 0 | 2 | 1 | +| 0 | 2 | 2 | +| 0 | 2 | 3 | +| 0 | 3 | -1 | +| 0 | 3 | 0 | +| 0 | 3 | 1 | +| 0 | 3 | 2 | +| 0 | 3 | 3 | +| 1 | -1 | -1 | +| 1 | -1 | 0 | +| 1 | -1 | 1 | +| 1 | -1 | 2 | +| 1 | -1 | 3 | +| 1 | 0 | -1 | +| 1 | 0 | 0 | +| 1 | 0 | 1 | +| 1 | 0 | 2 | +| 1 | 0 | 3 | +| 1 | 1 | -1 | +| 1 | 1 | 0 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 3 | +| 1 | 2 | -1 | +| 1 | 2 | 0 | +| 1 | 2 | 1 | +| 1 | 2 | 2 | +| 1 | 2 | 3 | +| 1 | 3 | -1 | +| 1 | 3 | 0 | +| 1 | 3 | 1 | +| 1 | 3 | 2 | +| 1 | 3 | 3 | +| 2 | -1 | -1 | +| 2 | -1 | 0 | +| 2 | -1 | 1 | +| 2 | -1 | 2 | +| 2 | -1 | 3 | +| 2 | 0 | -1 | +| 2 | 0 | 0 | +| 2 | 0 | 1 | +| 2 | 0 | 2 | +| 2 | 0 | 3 | +| 2 | 1 | -1 | +| 2 | 1 | 0 | +| 2 | 1 | 1 | +| 2 | 1 | 2 | +| 2 | 1 | 3 | +| 2 | 2 | -1 | +| 2 | 2 | 0 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 3 | +| 2 | 3 | -1 | +| 2 | 3 | 0 | +| 2 | 3 | 1 | +| 2 | 3 | 2 | +| 2 | 3 | 3 | +| 3 | -1 | -1 | +| 3 | -1 | 0 | +| 3 | -1 | 1 | +| 3 | -1 | 2 | +| 3 | -1 | 3 | +| 3 | 0 | -1 | +| 3 | 0 | 0 | +| 3 | 0 | 1 | +| 3 | 0 | 2 | +| 3 | 0 | 3 | +| 3 | 1 | -1 | +| 3 | 1 | 0 | +| 3 | 1 | 1 | +| 3 | 1 | 2 | +| 3 | 1 | 3 | +| 3 | 2 | -1 | +| 3 | 2 | 0 | +| 3 | 2 | 1 | +| 3 | 2 | 2 | +| 3 | 2 | 3 | +| 3 | 3 | -1 | +| 3 | 3 | 0 | +| 3 | 3 | 1 | +| 3 | 3 | 2 | +| 3 | 3 | 3 | +| 4 | -1 | -1 | +| 4 | -1 | 0 | +| 4 | -1 | 1 | +| 4 | -1 | 2 | +| 4 | -1 | 3 | +| 4 | 0 | -1 | +| 4 | 0 | 0 | +| 4 | 0 | 1 | +| 4 | 0 | 2 | +| 4 | 0 | 3 | +| 4 | 1 | -1 | +| 4 | 1 | 0 | +| 4 | 1 | 1 | +| 4 | 1 | 2 | +| 4 | 1 | 3 | +| 4 | 2 | -1 | +| 4 | 2 | 0 | +| 4 | 2 | 1 | +| 4 | 2 | 2 | +| 4 | 2 | 3 | +| 4 | 3 | -1 | +| 4 | 3 | 0 | +| 4 | 3 | 1 | +| 4 | 3 | 2 | +| 4 | 3 | 3 | ++--------+----+----+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u1(c1)), unnest(mv_to_array(c_mv_num)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('-1', + '0', + '1', + '2', + '3')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | -1 | -1 | +| 0 | -1 | 0 | +| 0 | -1 | 1 | +| 0 | -1 | 2 | +| 0 | -1 | 3 | +| 0 | 0 | -1 | +| 0 | 0 | 0 | +| 0 | 0 | 1 | +| 0 | 0 | 2 | +| 0 | 0 | 3 | +| 0 | 1 | -1 | +| 0 | 1 | 0 | +| 0 | 1 | 1 | +| 0 | 1 | 2 | +| 0 | 1 | 3 | +| 0 | 2 | -1 | +| 0 | 2 | 0 | +| 0 | 2 | 1 | +| 0 | 2 | 2 | +| 0 | 2 | 3 | +| 0 | 3 | -1 | +| 0 | 3 | 0 | +| 0 | 3 | 1 | +| 0 | 3 | 2 | +| 0 | 3 | 3 | +| 1 | -1 | -1 | +| 1 | -1 | 0 | +| 1 | -1 | 1 | +| 1 | -1 | 2 | +| 1 | -1 | 3 | +| 1 | 0 | -1 | +| 1 | 0 | 0 | +| 1 | 0 | 1 | +| 1 | 0 | 2 | +| 1 | 0 | 3 | +| 1 | 1 | -1 | +| 1 | 1 | 0 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 3 | +| 1 | 2 | -1 | +| 1 | 2 | 0 | +| 1 | 2 | 1 | +| 1 | 2 | 2 | +| 1 | 2 | 3 | +| 1 | 3 | -1 | +| 1 | 3 | 0 | +| 1 | 3 | 1 | +| 1 | 3 | 2 | +| 1 | 3 | 3 | +| 2 | -1 | -1 | +| 2 | -1 | 0 | +| 2 | -1 | 1 | +| 2 | -1 | 2 | +| 2 | -1 | 3 | +| 2 | 0 | -1 | +| 2 | 0 | 0 | +| 2 | 0 | 1 | +| 2 | 0 | 2 | +| 2 | 0 | 3 | +| 2 | 1 | -1 | +| 2 | 1 | 0 | +| 2 | 1 | 1 | +| 2 | 1 | 2 | +| 2 | 1 | 3 | +| 2 | 2 | -1 | +| 2 | 2 | 0 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 3 | +| 2 | 3 | -1 | +| 2 | 3 | 0 | +| 2 | 3 | 1 | +| 2 | 3 | 2 | +| 2 | 3 | 3 | +| 3 | -1 | -1 | +| 3 | -1 | 0 | +| 3 | -1 | 1 | +| 3 | -1 | 2 | +| 3 | -1 | 3 | +| 3 | 0 | -1 | +| 3 | 0 | 0 | +| 3 | 0 | 1 | +| 3 | 0 | 2 | +| 3 | 0 | 3 | +| 3 | 1 | -1 | +| 3 | 1 | 0 | +| 3 | 1 | 1 | +| 3 | 1 | 2 | +| 3 | 1 | 3 | +| 3 | 2 | -1 | +| 3 | 2 | 0 | +| 3 | 2 | 1 | +| 3 | 2 | 2 | +| 3 | 2 | 3 | +| 3 | 3 | -1 | +| 3 | 3 | 0 | +| 3 | 3 | 1 | +| 3 | 3 | 2 | +| 3 | 3 | 3 | +| 4 | -1 | -1 | +| 4 | -1 | 0 | +| 4 | -1 | 1 | +| 4 | -1 | 2 | +| 4 | -1 | 3 | +| 4 | 0 | -1 | +| 4 | 0 | 0 | +| 4 | 0 | 1 | +| 4 | 0 | 2 | +| 4 | 0 | 3 | +| 4 | 1 | -1 | +| 4 | 1 | 0 | +| 4 | 1 | 1 | +| 4 | 1 | 2 | +| 4 | 1 | 3 | +| 4 | 2 | -1 | +| 4 | 2 | 0 | +| 4 | 2 | 1 | +| 4 | 2 | 2 | +| 4 | 2 | 3 | +| 4 | 3 | -1 | +| 4 | 3 | 0 | +| 4 | 3 | 1 | +| 4 | 3 | 2 | +| 4 | 3 | 3 | ++--------+----+----+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A2_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u1(c1)) +SELECT c_long, + c1, + c2 +FROM t1, + unnest(mv_to_array(c_mv_num)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('-1', + '0', + '1', + '2', + '3')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | -1 | -1 | +| 0 | -1 | 0 | +| 0 | -1 | 1 | +| 0 | -1 | 2 | +| 0 | -1 | 3 | +| 0 | 0 | -1 | +| 0 | 0 | 0 | +| 0 | 0 | 1 | +| 0 | 0 | 2 | +| 0 | 0 | 3 | +| 0 | 1 | -1 | +| 0 | 1 | 0 | +| 0 | 1 | 1 | +| 0 | 1 | 2 | +| 0 | 1 | 3 | +| 0 | 2 | -1 | +| 0 | 2 | 0 | +| 0 | 2 | 1 | +| 0 | 2 | 2 | +| 0 | 2 | 3 | +| 0 | 3 | -1 | +| 0 | 3 | 0 | +| 0 | 3 | 1 | +| 0 | 3 | 2 | +| 0 | 3 | 3 | +| 1 | -1 | -1 | +| 1 | -1 | 0 | +| 1 | -1 | 1 | +| 1 | -1 | 2 | +| 1 | -1 | 3 | +| 1 | 0 | -1 | +| 1 | 0 | 0 | +| 1 | 0 | 1 | +| 1 | 0 | 2 | +| 1 | 0 | 3 | +| 1 | 1 | -1 | +| 1 | 1 | 0 | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 3 | +| 1 | 2 | -1 | +| 1 | 2 | 0 | +| 1 | 2 | 1 | +| 1 | 2 | 2 | +| 1 | 2 | 3 | +| 1 | 3 | -1 | +| 1 | 3 | 0 | +| 1 | 3 | 1 | +| 1 | 3 | 2 | +| 1 | 3 | 3 | +| 2 | -1 | -1 | +| 2 | -1 | 0 | +| 2 | -1 | 1 | +| 2 | -1 | 2 | +| 2 | -1 | 3 | +| 2 | 0 | -1 | +| 2 | 0 | 0 | +| 2 | 0 | 1 | +| 2 | 0 | 2 | +| 2 | 0 | 3 | +| 2 | 1 | -1 | +| 2 | 1 | 0 | +| 2 | 1 | 1 | +| 2 | 1 | 2 | +| 2 | 1 | 3 | +| 2 | 2 | -1 | +| 2 | 2 | 0 | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 3 | +| 2 | 3 | -1 | +| 2 | 3 | 0 | +| 2 | 3 | 1 | +| 2 | 3 | 2 | +| 2 | 3 | 3 | +| 3 | -1 | -1 | +| 3 | -1 | 0 | +| 3 | -1 | 1 | +| 3 | -1 | 2 | +| 3 | -1 | 3 | +| 3 | 0 | -1 | +| 3 | 0 | 0 | +| 3 | 0 | 1 | +| 3 | 0 | 2 | +| 3 | 0 | 3 | +| 3 | 1 | -1 | +| 3 | 1 | 0 | +| 3 | 1 | 1 | +| 3 | 1 | 2 | +| 3 | 1 | 3 | +| 3 | 2 | -1 | +| 3 | 2 | 0 | +| 3 | 2 | 1 | +| 3 | 2 | 2 | +| 3 | 2 | 3 | +| 3 | 3 | -1 | +| 3 | 3 | 0 | +| 3 | 3 | 1 | +| 3 | 3 | 2 | +| 3 | 3 | 3 | +| 4 | -1 | -1 | +| 4 | -1 | 0 | +| 4 | -1 | 1 | +| 4 | -1 | 2 | +| 4 | -1 | 3 | +| 4 | 0 | -1 | +| 4 | 0 | 0 | +| 4 | 0 | 1 | +| 4 | 0 | 2 | +| 4 | 0 | 3 | +| 4 | 1 | -1 | +| 4 | 1 | 0 | +| 4 | 1 | 1 | +| 4 | 1 | 2 | +| 4 | 1 | 3 | +| 4 | 2 | -1 | +| 4 | 2 | 0 | +| 4 | 2 | 1 | +| 4 | 2 | 2 | +| 4 | 2 | 3 | +| 4 | 3 | -1 | +| 4 | 3 | 0 | +| 4 | 3 | 1 | +| 4 | 3 | 2 | +| 4 | 3 | 3 | ++--------+----+----+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u1(c1), + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '[2]', + '[3, [4, 5]]')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+-------------+-------------+ +| c_long | c1 | c2 | ++--------+-------------+-------------+ +| 0 | | | +| 0 | | 1 | +| 0 | | [2] | +| 0 | | [3, [4, 5]] | +| 0 | | | +| 0 | 1 | | +| 0 | 1 | 1 | +| 0 | 1 | [2] | +| 0 | 1 | [3, [4, 5]] | +| 0 | 1 | | +| 0 | [2] | | +| 0 | [2] | 1 | +| 0 | [2] | [2] | +| 0 | [2] | [3, [4, 5]] | +| 0 | [2] | | +| 0 | [3, [4, 5]] | | +| 0 | [3, [4, 5]] | 1 | +| 0 | [3, [4, 5]] | [2] | +| 0 | [3, [4, 5]] | [3, [4, 5]] | +| 0 | [3, [4, 5]] | | +| 0 | | | +| 0 | | 1 | +| 0 | | [2] | +| 0 | | [3, [4, 5]] | +| 0 | | | +| 1 | | | +| 1 | | 1 | +| 1 | | [2] | +| 1 | | [3, [4, 5]] | +| 1 | | | +| 1 | 1 | | +| 1 | 1 | 1 | +| 1 | 1 | [2] | +| 1 | 1 | [3, [4, 5]] | +| 1 | 1 | | +| 1 | [2] | | +| 1 | [2] | 1 | +| 1 | [2] | [2] | +| 1 | [2] | [3, [4, 5]] | +| 1 | [2] | | +| 1 | [3, [4, 5]] | | +| 1 | [3, [4, 5]] | 1 | +| 1 | [3, [4, 5]] | [2] | +| 1 | [3, [4, 5]] | [3, [4, 5]] | +| 1 | [3, [4, 5]] | | +| 1 | | | +| 1 | | 1 | +| 1 | | [2] | +| 1 | | [3, [4, 5]] | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | [2] | +| 2 | 1 | [3, [4, 5]] | +| 2 | 1 | | +| 2 | [2] | | +| 2 | [2] | 1 | +| 2 | [2] | [2] | +| 2 | [2] | [3, [4, 5]] | +| 2 | [2] | | +| 2 | [3, [4, 5]] | | +| 2 | [3, [4, 5]] | 1 | +| 2 | [3, [4, 5]] | [2] | +| 2 | [3, [4, 5]] | [3, [4, 5]] | +| 2 | [3, [4, 5]] | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | [2] | +| 3 | 1 | [3, [4, 5]] | +| 3 | 1 | | +| 3 | [2] | | +| 3 | [2] | 1 | +| 3 | [2] | [2] | +| 3 | [2] | [3, [4, 5]] | +| 3 | [2] | | +| 3 | [3, [4, 5]] | | +| 3 | [3, [4, 5]] | 1 | +| 3 | [3, [4, 5]] | [2] | +| 3 | [3, [4, 5]] | [3, [4, 5]] | +| 3 | [3, [4, 5]] | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | [2] | +| 4 | 1 | [3, [4, 5]] | +| 4 | 1 | | +| 4 | [2] | | +| 4 | [2] | 1 | +| 4 | [2] | [2] | +| 4 | [2] | [3, [4, 5]] | +| 4 | [2] | | +| 4 | [3, [4, 5]] | | +| 4 | [3, [4, 5]] | 1 | +| 4 | [3, [4, 5]] | [2] | +| 4 | [3, [4, 5]] | [3, [4, 5]] | +| 4 | [3, [4, 5]] | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | ++--------+-------------+-------------+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u1(c1)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '[2]', + '[3, [4, 5]]')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+-------------+-------------+ +| c_long | c1 | c2 | ++--------+-------------+-------------+ +| 0 | | | +| 0 | | 1 | +| 0 | | [2] | +| 0 | | [3, [4, 5]] | +| 0 | | | +| 0 | 1 | | +| 0 | 1 | 1 | +| 0 | 1 | [2] | +| 0 | 1 | [3, [4, 5]] | +| 0 | 1 | | +| 0 | [2] | | +| 0 | [2] | 1 | +| 0 | [2] | [2] | +| 0 | [2] | [3, [4, 5]] | +| 0 | [2] | | +| 0 | [3, [4, 5]] | | +| 0 | [3, [4, 5]] | 1 | +| 0 | [3, [4, 5]] | [2] | +| 0 | [3, [4, 5]] | [3, [4, 5]] | +| 0 | [3, [4, 5]] | | +| 0 | | | +| 0 | | 1 | +| 0 | | [2] | +| 0 | | [3, [4, 5]] | +| 0 | | | +| 1 | | | +| 1 | | 1 | +| 1 | | [2] | +| 1 | | [3, [4, 5]] | +| 1 | | | +| 1 | 1 | | +| 1 | 1 | 1 | +| 1 | 1 | [2] | +| 1 | 1 | [3, [4, 5]] | +| 1 | 1 | | +| 1 | [2] | | +| 1 | [2] | 1 | +| 1 | [2] | [2] | +| 1 | [2] | [3, [4, 5]] | +| 1 | [2] | | +| 1 | [3, [4, 5]] | | +| 1 | [3, [4, 5]] | 1 | +| 1 | [3, [4, 5]] | [2] | +| 1 | [3, [4, 5]] | [3, [4, 5]] | +| 1 | [3, [4, 5]] | | +| 1 | | | +| 1 | | 1 | +| 1 | | [2] | +| 1 | | [3, [4, 5]] | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | [2] | +| 2 | 1 | [3, [4, 5]] | +| 2 | 1 | | +| 2 | [2] | | +| 2 | [2] | 1 | +| 2 | [2] | [2] | +| 2 | [2] | [3, [4, 5]] | +| 2 | [2] | | +| 2 | [3, [4, 5]] | | +| 2 | [3, [4, 5]] | 1 | +| 2 | [3, [4, 5]] | [2] | +| 2 | [3, [4, 5]] | [3, [4, 5]] | +| 2 | [3, [4, 5]] | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | [2] | +| 3 | 1 | [3, [4, 5]] | +| 3 | 1 | | +| 3 | [2] | | +| 3 | [2] | 1 | +| 3 | [2] | [2] | +| 3 | [2] | [3, [4, 5]] | +| 3 | [2] | | +| 3 | [3, [4, 5]] | | +| 3 | [3, [4, 5]] | 1 | +| 3 | [3, [4, 5]] | [2] | +| 3 | [3, [4, 5]] | [3, [4, 5]] | +| 3 | [3, [4, 5]] | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | [2] | +| 4 | 1 | [3, [4, 5]] | +| 4 | 1 | | +| 4 | [2] | | +| 4 | [2] | 1 | +| 4 | [2] | [2] | +| 4 | [2] | [3, [4, 5]] | +| 4 | [2] | | +| 4 | [3, [4, 5]] | | +| 4 | [3, [4, 5]] | 1 | +| 4 | [3, [4, 5]] | [2] | +| 4 | [3, [4, 5]] | [3, [4, 5]] | +| 4 | [3, [4, 5]] | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | ++--------+-------------+-------------+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A3_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u1(c1)) +SELECT c_long, + c1, + c2 +FROM t1, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '[2]', + '[3, [4, 5]]')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+-------------+-------------+ +| c_long | c1 | c2 | ++--------+-------------+-------------+ +| 0 | | | +| 0 | | 1 | +| 0 | | [2] | +| 0 | | [3, [4, 5]] | +| 0 | | | +| 0 | 1 | | +| 0 | 1 | 1 | +| 0 | 1 | [2] | +| 0 | 1 | [3, [4, 5]] | +| 0 | 1 | | +| 0 | [2] | | +| 0 | [2] | 1 | +| 0 | [2] | [2] | +| 0 | [2] | [3, [4, 5]] | +| 0 | [2] | | +| 0 | [3, [4, 5]] | | +| 0 | [3, [4, 5]] | 1 | +| 0 | [3, [4, 5]] | [2] | +| 0 | [3, [4, 5]] | [3, [4, 5]] | +| 0 | [3, [4, 5]] | | +| 0 | | | +| 0 | | 1 | +| 0 | | [2] | +| 0 | | [3, [4, 5]] | +| 0 | | | +| 1 | | | +| 1 | | 1 | +| 1 | | [2] | +| 1 | | [3, [4, 5]] | +| 1 | | | +| 1 | 1 | | +| 1 | 1 | 1 | +| 1 | 1 | [2] | +| 1 | 1 | [3, [4, 5]] | +| 1 | 1 | | +| 1 | [2] | | +| 1 | [2] | 1 | +| 1 | [2] | [2] | +| 1 | [2] | [3, [4, 5]] | +| 1 | [2] | | +| 1 | [3, [4, 5]] | | +| 1 | [3, [4, 5]] | 1 | +| 1 | [3, [4, 5]] | [2] | +| 1 | [3, [4, 5]] | [3, [4, 5]] | +| 1 | [3, [4, 5]] | | +| 1 | | | +| 1 | | 1 | +| 1 | | [2] | +| 1 | | [3, [4, 5]] | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | [2] | +| 2 | 1 | [3, [4, 5]] | +| 2 | 1 | | +| 2 | [2] | | +| 2 | [2] | 1 | +| 2 | [2] | [2] | +| 2 | [2] | [3, [4, 5]] | +| 2 | [2] | | +| 2 | [3, [4, 5]] | | +| 2 | [3, [4, 5]] | 1 | +| 2 | [3, [4, 5]] | [2] | +| 2 | [3, [4, 5]] | [3, [4, 5]] | +| 2 | [3, [4, 5]] | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | [2] | +| 3 | 1 | [3, [4, 5]] | +| 3 | 1 | | +| 3 | [2] | | +| 3 | [2] | 1 | +| 3 | [2] | [2] | +| 3 | [2] | [3, [4, 5]] | +| 3 | [2] | | +| 3 | [3, [4, 5]] | | +| 3 | [3, [4, 5]] | 1 | +| 3 | [3, [4, 5]] | [2] | +| 3 | [3, [4, 5]] | [3, [4, 5]] | +| 3 | [3, [4, 5]] | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | [2] | +| 4 | 1 | [3, [4, 5]] | +| 4 | 1 | | +| 4 | [2] | | +| 4 | [2] | 1 | +| 4 | [2] | [2] | +| 4 | [2] | [3, [4, 5]] | +| 4 | [2] | | +| 4 | [3, [4, 5]] | | +| 4 | [3, [4, 5]] | 1 | +| 4 | [3, [4, 5]] | [2] | +| 4 | [3, [4, 5]] | [3, [4, 5]] | +| 4 | [3, [4, 5]] | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | ++--------+-------------+-------------+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u1(c1), + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '2', + '3')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | | | +| 0 | | 1 | +| 0 | | 2 | +| 0 | | 3 | +| 0 | | | +| 0 | 1 | | +| 0 | 1 | 1 | +| 0 | 1 | 2 | +| 0 | 1 | 3 | +| 0 | 1 | | +| 0 | 2 | | +| 0 | 2 | 1 | +| 0 | 2 | 2 | +| 0 | 2 | 3 | +| 0 | 2 | | +| 0 | 3 | | +| 0 | 3 | 1 | +| 0 | 3 | 2 | +| 0 | 3 | 3 | +| 0 | 3 | | +| 0 | | | +| 0 | | 1 | +| 0 | | 2 | +| 0 | | 3 | +| 0 | | | +| 1 | | | +| 1 | | 1 | +| 1 | | 2 | +| 1 | | 3 | +| 1 | | | +| 1 | 1 | | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 3 | +| 1 | 1 | | +| 1 | 2 | | +| 1 | 2 | 1 | +| 1 | 2 | 2 | +| 1 | 2 | 3 | +| 1 | 2 | | +| 1 | 3 | | +| 1 | 3 | 1 | +| 1 | 3 | 2 | +| 1 | 3 | 3 | +| 1 | 3 | | +| 1 | | | +| 1 | | 1 | +| 1 | | 2 | +| 1 | | 3 | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | 2 | +| 2 | 1 | 3 | +| 2 | 1 | | +| 2 | 2 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 3 | +| 2 | 2 | | +| 2 | 3 | | +| 2 | 3 | 1 | +| 2 | 3 | 2 | +| 2 | 3 | 3 | +| 2 | 3 | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | 2 | +| 3 | 1 | 3 | +| 3 | 1 | | +| 3 | 2 | | +| 3 | 2 | 1 | +| 3 | 2 | 2 | +| 3 | 2 | 3 | +| 3 | 2 | | +| 3 | 3 | | +| 3 | 3 | 1 | +| 3 | 3 | 2 | +| 3 | 3 | 3 | +| 3 | 3 | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | 2 | +| 4 | 1 | 3 | +| 4 | 1 | | +| 4 | 2 | | +| 4 | 2 | 1 | +| 4 | 2 | 2 | +| 4 | 2 | 3 | +| 4 | 2 | | +| 4 | 3 | | +| 4 | 3 | 1 | +| 4 | 3 | 2 | +| 4 | 3 | 3 | +| 4 | 3 | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | ++--------+----+----+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u1(c1)), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '2', + '3')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | | | +| 0 | | 1 | +| 0 | | 2 | +| 0 | | 3 | +| 0 | | | +| 0 | 1 | | +| 0 | 1 | 1 | +| 0 | 1 | 2 | +| 0 | 1 | 3 | +| 0 | 1 | | +| 0 | 2 | | +| 0 | 2 | 1 | +| 0 | 2 | 2 | +| 0 | 2 | 3 | +| 0 | 2 | | +| 0 | 3 | | +| 0 | 3 | 1 | +| 0 | 3 | 2 | +| 0 | 3 | 3 | +| 0 | 3 | | +| 0 | | | +| 0 | | 1 | +| 0 | | 2 | +| 0 | | 3 | +| 0 | | | +| 1 | | | +| 1 | | 1 | +| 1 | | 2 | +| 1 | | 3 | +| 1 | | | +| 1 | 1 | | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 3 | +| 1 | 1 | | +| 1 | 2 | | +| 1 | 2 | 1 | +| 1 | 2 | 2 | +| 1 | 2 | 3 | +| 1 | 2 | | +| 1 | 3 | | +| 1 | 3 | 1 | +| 1 | 3 | 2 | +| 1 | 3 | 3 | +| 1 | 3 | | +| 1 | | | +| 1 | | 1 | +| 1 | | 2 | +| 1 | | 3 | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | 2 | +| 2 | 1 | 3 | +| 2 | 1 | | +| 2 | 2 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 3 | +| 2 | 2 | | +| 2 | 3 | | +| 2 | 3 | 1 | +| 2 | 3 | 2 | +| 2 | 3 | 3 | +| 2 | 3 | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | 2 | +| 3 | 1 | 3 | +| 3 | 1 | | +| 3 | 2 | | +| 3 | 2 | 1 | +| 3 | 2 | 2 | +| 3 | 2 | 3 | +| 3 | 2 | | +| 3 | 3 | | +| 3 | 3 | 1 | +| 3 | 3 | 2 | +| 3 | 3 | 3 | +| 3 | 3 | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | 2 | +| 4 | 1 | 3 | +| 4 | 1 | | +| 4 | 2 | | +| 4 | 2 | 1 | +| 4 | 2 | 2 | +| 4 | 2 | 3 | +| 4 | 2 | | +| 4 | 3 | | +| 4 | 3 | 1 | +| 4 | 3 | 2 | +| 4 | 3 | 3 | +| 4 | 3 | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | ++--------+----+----+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A4_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u1(c1)) +SELECT c_long, + c1, + c2 +FROM t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '2', + '3')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | | | +| 0 | | 1 | +| 0 | | 2 | +| 0 | | 3 | +| 0 | | | +| 0 | 1 | | +| 0 | 1 | 1 | +| 0 | 1 | 2 | +| 0 | 1 | 3 | +| 0 | 1 | | +| 0 | 2 | | +| 0 | 2 | 1 | +| 0 | 2 | 2 | +| 0 | 2 | 3 | +| 0 | 2 | | +| 0 | 3 | | +| 0 | 3 | 1 | +| 0 | 3 | 2 | +| 0 | 3 | 3 | +| 0 | 3 | | +| 0 | | | +| 0 | | 1 | +| 0 | | 2 | +| 0 | | 3 | +| 0 | | | +| 1 | | | +| 1 | | 1 | +| 1 | | 2 | +| 1 | | 3 | +| 1 | | | +| 1 | 1 | | +| 1 | 1 | 1 | +| 1 | 1 | 2 | +| 1 | 1 | 3 | +| 1 | 1 | | +| 1 | 2 | | +| 1 | 2 | 1 | +| 1 | 2 | 2 | +| 1 | 2 | 3 | +| 1 | 2 | | +| 1 | 3 | | +| 1 | 3 | 1 | +| 1 | 3 | 2 | +| 1 | 3 | 3 | +| 1 | 3 | | +| 1 | | | +| 1 | | 1 | +| 1 | | 2 | +| 1 | | 3 | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | 2 | +| 2 | 1 | 3 | +| 2 | 1 | | +| 2 | 2 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 3 | +| 2 | 2 | | +| 2 | 3 | | +| 2 | 3 | 1 | +| 2 | 3 | 2 | +| 2 | 3 | 3 | +| 2 | 3 | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | 2 | +| 3 | 1 | 3 | +| 3 | 1 | | +| 3 | 2 | | +| 3 | 2 | 1 | +| 3 | 2 | 2 | +| 3 | 2 | 3 | +| 3 | 2 | | +| 3 | 3 | | +| 3 | 3 | 1 | +| 3 | 3 | 2 | +| 3 | 3 | 3 | +| 3 | 3 | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | 2 | +| 4 | 1 | 3 | +| 4 | 1 | | +| 4 | 2 | | +| 4 | 2 | 1 | +| 4 | 2 | 2 | +| 4 | 2 | 3 | +| 4 | 2 | | +| 4 | 3 | | +| 4 | 3 | 1 | +| 4 | 3 | 2 | +| 4 | 3 | 3 | +| 4 | 3 | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | ++--------+----+----+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u1(c1), + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '[2]', + '[3, [4, 5]]')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+-------------+-------------+ +| c_long | c1 | c2 | ++--------+-------------+-------------+ +| 0 | | | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | [2] | +| 2 | 1 | [3, [4, 5]] | +| 2 | 1 | | +| 2 | [2] | | +| 2 | [2] | 1 | +| 2 | [2] | [2] | +| 2 | [2] | [3, [4, 5]] | +| 2 | [2] | | +| 2 | [3, [4, 5]] | | +| 2 | [3, [4, 5]] | 1 | +| 2 | [3, [4, 5]] | [2] | +| 2 | [3, [4, 5]] | [3, [4, 5]] | +| 2 | [3, [4, 5]] | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | [2] | +| 3 | 1 | [3, [4, 5]] | +| 3 | 1 | | +| 3 | [2] | | +| 3 | [2] | 1 | +| 3 | [2] | [2] | +| 3 | [2] | [3, [4, 5]] | +| 3 | [2] | | +| 3 | [3, [4, 5]] | | +| 3 | [3, [4, 5]] | 1 | +| 3 | [3, [4, 5]] | [2] | +| 3 | [3, [4, 5]] | [3, [4, 5]] | +| 3 | [3, [4, 5]] | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | [2] | +| 4 | 1 | [3, [4, 5]] | +| 4 | 1 | | +| 4 | [2] | | +| 4 | [2] | 1 | +| 4 | [2] | [2] | +| 4 | [2] | [3, [4, 5]] | +| 4 | [2] | | +| 4 | [3, [4, 5]] | | +| 4 | [3, [4, 5]] | 1 | +| 4 | [3, [4, 5]] | [2] | +| 4 | [3, [4, 5]] | [3, [4, 5]] | +| 4 | [3, [4, 5]] | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | ++--------+-------------+-------------+ +(77 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u1(c1)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '[2]', + '[3, [4, 5]]')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+-------------+-------------+ +| c_long | c1 | c2 | ++--------+-------------+-------------+ +| 0 | | | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | [2] | +| 2 | 1 | [3, [4, 5]] | +| 2 | 1 | | +| 2 | [2] | | +| 2 | [2] | 1 | +| 2 | [2] | [2] | +| 2 | [2] | [3, [4, 5]] | +| 2 | [2] | | +| 2 | [3, [4, 5]] | | +| 2 | [3, [4, 5]] | 1 | +| 2 | [3, [4, 5]] | [2] | +| 2 | [3, [4, 5]] | [3, [4, 5]] | +| 2 | [3, [4, 5]] | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | [2] | +| 3 | 1 | [3, [4, 5]] | +| 3 | 1 | | +| 3 | [2] | | +| 3 | [2] | 1 | +| 3 | [2] | [2] | +| 3 | [2] | [3, [4, 5]] | +| 3 | [2] | | +| 3 | [3, [4, 5]] | | +| 3 | [3, [4, 5]] | 1 | +| 3 | [3, [4, 5]] | [2] | +| 3 | [3, [4, 5]] | [3, [4, 5]] | +| 3 | [3, [4, 5]] | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | [2] | +| 4 | 1 | [3, [4, 5]] | +| 4 | 1 | | +| 4 | [2] | | +| 4 | [2] | 1 | +| 4 | [2] | [2] | +| 4 | [2] | [3, [4, 5]] | +| 4 | [2] | | +| 4 | [3, [4, 5]] | | +| 4 | [3, [4, 5]] | 1 | +| 4 | [3, [4, 5]] | [2] | +| 4 | [3, [4, 5]] | [3, [4, 5]] | +| 4 | [3, [4, 5]] | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | ++--------+-------------+-------------+ +(77 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A5_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u1(c1)) +SELECT c_long, + c1, + c2 +FROM t1, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '[2]', + '[3, [4, 5]]')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+-------------+-------------+ +| c_long | c1 | c2 | ++--------+-------------+-------------+ +| 0 | | | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | [2] | +| 2 | 1 | [3, [4, 5]] | +| 2 | 1 | | +| 2 | [2] | | +| 2 | [2] | 1 | +| 2 | [2] | [2] | +| 2 | [2] | [3, [4, 5]] | +| 2 | [2] | | +| 2 | [3, [4, 5]] | | +| 2 | [3, [4, 5]] | 1 | +| 2 | [3, [4, 5]] | [2] | +| 2 | [3, [4, 5]] | [3, [4, 5]] | +| 2 | [3, [4, 5]] | | +| 2 | | | +| 2 | | 1 | +| 2 | | [2] | +| 2 | | [3, [4, 5]] | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | [2] | +| 3 | 1 | [3, [4, 5]] | +| 3 | 1 | | +| 3 | [2] | | +| 3 | [2] | 1 | +| 3 | [2] | [2] | +| 3 | [2] | [3, [4, 5]] | +| 3 | [2] | | +| 3 | [3, [4, 5]] | | +| 3 | [3, [4, 5]] | 1 | +| 3 | [3, [4, 5]] | [2] | +| 3 | [3, [4, 5]] | [3, [4, 5]] | +| 3 | [3, [4, 5]] | | +| 3 | | | +| 3 | | 1 | +| 3 | | [2] | +| 3 | | [3, [4, 5]] | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | [2] | +| 4 | 1 | [3, [4, 5]] | +| 4 | 1 | | +| 4 | [2] | | +| 4 | [2] | 1 | +| 4 | [2] | [2] | +| 4 | [2] | [3, [4, 5]] | +| 4 | [2] | | +| 4 | [3, [4, 5]] | | +| 4 | [3, [4, 5]] | 1 | +| 4 | [3, [4, 5]] | [2] | +| 4 | [3, [4, 5]] | [3, [4, 5]] | +| 4 | [3, [4, 5]] | | +| 4 | | | +| 4 | | 1 | +| 4 | | [2] | +| 4 | | [3, [4, 5]] | +| 4 | | | ++--------+-------------+-------------+ +(77 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u1(c1), + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '2', + '3')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | | | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | 2 | +| 2 | 1 | 3 | +| 2 | 1 | | +| 2 | 2 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 3 | +| 2 | 2 | | +| 2 | 3 | | +| 2 | 3 | 1 | +| 2 | 3 | 2 | +| 2 | 3 | 3 | +| 2 | 3 | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | 2 | +| 3 | 1 | 3 | +| 3 | 1 | | +| 3 | 2 | | +| 3 | 2 | 1 | +| 3 | 2 | 2 | +| 3 | 2 | 3 | +| 3 | 2 | | +| 3 | 3 | | +| 3 | 3 | 1 | +| 3 | 3 | 2 | +| 3 | 3 | 3 | +| 3 | 3 | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | 2 | +| 4 | 1 | 3 | +| 4 | 1 | | +| 4 | 2 | | +| 4 | 2 | 1 | +| 4 | 2 | 2 | +| 4 | 2 | 3 | +| 4 | 2 | | +| 4 | 3 | | +| 4 | 3 | 1 | +| 4 | 3 | 2 | +| 4 | 3 | 3 | +| 4 | 3 | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | ++--------+----+----+ +(77 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u1(c1)), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '2', + '3')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | | | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | 2 | +| 2 | 1 | 3 | +| 2 | 1 | | +| 2 | 2 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 3 | +| 2 | 2 | | +| 2 | 3 | | +| 2 | 3 | 1 | +| 2 | 3 | 2 | +| 2 | 3 | 3 | +| 2 | 3 | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | 2 | +| 3 | 1 | 3 | +| 3 | 1 | | +| 3 | 2 | | +| 3 | 2 | 1 | +| 3 | 2 | 2 | +| 3 | 2 | 3 | +| 3 | 2 | | +| 3 | 3 | | +| 3 | 3 | 1 | +| 3 | 3 | 2 | +| 3 | 3 | 3 | +| 3 | 3 | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | 2 | +| 4 | 1 | 3 | +| 4 | 1 | | +| 4 | 2 | | +| 4 | 2 | 1 | +| 4 | 2 | 2 | +| 4 | 2 | 3 | +| 4 | 2 | | +| 4 | 3 | | +| 4 | 3 | 1 | +| 4 | 3 | 2 | +| 4 | 3 | 3 | +| 4 | 3 | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | ++--------+----+----+ +(77 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A6_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u1(c1)) +SELECT c_long, + c1, + c2 +FROM t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('', + '1', + '2', + '3')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | | | +| 1 | | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 2 | 1 | | +| 2 | 1 | 1 | +| 2 | 1 | 2 | +| 2 | 1 | 3 | +| 2 | 1 | | +| 2 | 2 | | +| 2 | 2 | 1 | +| 2 | 2 | 2 | +| 2 | 2 | 3 | +| 2 | 2 | | +| 2 | 3 | | +| 2 | 3 | 1 | +| 2 | 3 | 2 | +| 2 | 3 | 3 | +| 2 | 3 | | +| 2 | | | +| 2 | | 1 | +| 2 | | 2 | +| 2 | | 3 | +| 2 | | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 3 | 1 | | +| 3 | 1 | 1 | +| 3 | 1 | 2 | +| 3 | 1 | 3 | +| 3 | 1 | | +| 3 | 2 | | +| 3 | 2 | 1 | +| 3 | 2 | 2 | +| 3 | 2 | 3 | +| 3 | 2 | | +| 3 | 3 | | +| 3 | 3 | 1 | +| 3 | 3 | 2 | +| 3 | 3 | 3 | +| 3 | 3 | | +| 3 | | | +| 3 | | 1 | +| 3 | | 2 | +| 3 | | 3 | +| 3 | | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | +| 4 | 1 | | +| 4 | 1 | 1 | +| 4 | 1 | 2 | +| 4 | 1 | 3 | +| 4 | 1 | | +| 4 | 2 | | +| 4 | 2 | 1 | +| 4 | 2 | 2 | +| 4 | 2 | 3 | +| 4 | 2 | | +| 4 | 3 | | +| 4 | 3 | 1 | +| 4 | 3 | 2 | +| 4 | 3 | 3 | +| 4 | 3 | | +| 4 | | | +| 4 | | 1 | +| 4 | | 2 | +| 4 | | 3 | +| 4 | | | ++--------+----+----+ +(77 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u1(c1), + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | ++--------+----+----+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c1, + c2 +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u1(c1)), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | ++--------+----+----+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_multi_unnests TEST_ID: A7_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u1(c1)) +SELECT c_long, + c1, + c2 +FROM t1, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u2(c2) +WHERE (c1 IS NULL + OR c1 IN ('')) + AND (c2 IS NULL + OR c2 NOT IN ('doesntexist1', + 'doesntexist2')) + AND c_long>=0; ++--------+----+----+ +| c_long | c1 | c2 | ++--------+----+----+ +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 0 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 1 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 2 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 3 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | +| 4 | | | ++--------+----+----+ +(125 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_mv_complex, + count(*) cnt +FROM test_unnest +GROUP BY c_mv_complex; ++--------------+-----+ +| c_mv_complex | cnt | ++--------------+-----+ +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| my_empty | 5 | +| my_null | 5 | ++--------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| my_empty | 5 | +| my_null | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c_str, + c; ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | my_empty | 1 | +| | my_null | 1 | +| str2 | 1 | 1 | +| str2 | [2] | 1 | +| str2 | [3, [4, 5]] | 1 | +| str2 | my_empty | 1 | +| str2 | my_null | 1 | +| str3 | 1 | 1 | +| str3 | [2] | 1 | +| str3 | [3, [4, 5]] | 1 | +| str3 | my_empty | 1 | +| str3 | my_null | 1 | +| str4 | 1 | 1 | +| str4 | [2] | 1 | +| str4 | [3, [4, 5]] | 1 | +| str4 | my_empty | 1 | +| str4 | my_null | 1 | +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | my_empty | 1 | +| | my_null | 1 | ++-------+-------------+-----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c_str; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY GROUPING +SETS (c); ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| my_empty | 5 | +| my_null | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY GROUPING +SETS (c_str, + c); ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | | 5 | +| str2 | | 5 | +| str3 | | 5 | +| str4 | | 5 | +| | 1 | 5 | +| | [2] | 5 | +| | [3, [4, 5]] | 5 | +| | my_empty | 5 | +| | my_null | 5 | +| | | 5 | ++-------+-------------+-----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY GROUPING +SETS (c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY rollup(c); ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| my_empty | 5 | +| my_null | 5 | +| | 25 | ++-------------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY rollup(c_str, c); ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | my_empty | 1 | +| | my_null | 1 | +| | | 5 | +| str2 | 1 | 1 | +| str2 | [2] | 1 | +| str2 | [3, [4, 5]] | 1 | +| str2 | my_empty | 1 | +| str2 | my_null | 1 | +| str2 | | 5 | +| str3 | 1 | 1 | +| str3 | [2] | 1 | +| str3 | [3, [4, 5]] | 1 | +| str3 | my_empty | 1 | +| str3 | my_null | 1 | +| str3 | | 5 | +| str4 | 1 | 1 | +| str4 | [2] | 1 | +| str4 | [3, [4, 5]] | 1 | +| str4 | my_empty | 1 | +| str4 | my_null | 1 | +| str4 | | 5 | +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | my_empty | 1 | +| | my_null | 1 | +| | | 25 | +| | | 5 | ++-------+-------------+-----+ +(31 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY rollup(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY cube(c); ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| my_empty | 5 | +| my_null | 5 | +| | 25 | ++-------------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY cube(c_str, c); ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | my_empty | 1 | +| | my_null | 1 | +| | | 5 | +| str2 | 1 | 1 | +| str2 | [2] | 1 | +| str2 | [3, [4, 5]] | 1 | +| str2 | my_empty | 1 | +| str2 | my_null | 1 | +| str2 | | 5 | +| str3 | 1 | 1 | +| str3 | [2] | 1 | +| str3 | [3, [4, 5]] | 1 | +| str3 | my_empty | 1 | +| str3 | my_null | 1 | +| str3 | | 5 | +| str4 | 1 | 1 | +| str4 | [2] | 1 | +| str4 | [3, [4, 5]] | 1 | +| str4 | my_empty | 1 | +| str4 | my_null | 1 | +| str4 | | 5 | +| | 1 | 1 | +| | 1 | 5 | +| | [2] | 1 | +| | [2] | 5 | +| | [3, [4, 5]] | 1 | +| | [3, [4, 5]] | 5 | +| | my_empty | 1 | +| | my_empty | 5 | +| | my_null | 1 | +| | my_null | 5 | +| | | 25 | +| | | 5 | ++-------+-------------+-----+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY cube(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c +HAVING c='1'; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 5 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A1_B15 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c_str +HAVING c_str='str2'; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str2 | 5 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_mv_num, + count(*) cnt +FROM test_unnest +GROUP BY c_mv_num; ++----------+-----+ +| c_mv_num | cnt | ++----------+-----+ +| -1 | 5 | +| 0 | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | ++----------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c; ++----+-----+ +| c | cnt | ++----+-----+ +| -1 | 5 | +| 0 | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | ++----+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c_str, + c; ++-------+----+-----+ +| c_str | c | cnt | ++-------+----+-----+ +| | -1 | 1 | +| | 0 | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | +| str2 | -1 | 1 | +| str2 | 0 | 1 | +| str2 | 1 | 1 | +| str2 | 2 | 1 | +| str2 | 3 | 1 | +| str3 | -1 | 1 | +| str3 | 0 | 1 | +| str3 | 1 | 1 | +| str3 | 2 | 1 | +| str3 | 3 | 1 | +| str4 | -1 | 1 | +| str4 | 0 | 1 | +| str4 | 1 | 1 | +| str4 | 2 | 1 | +| str4 | 3 | 1 | +| | -1 | 1 | +| | 0 | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | ++-------+----+-----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c_str; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY GROUPING +SETS (c); ++----+-----+ +| c | cnt | ++----+-----+ +| -1 | 5 | +| 0 | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | ++----+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY GROUPING +SETS (c_str, + c); ++-------+----+-----+ +| c_str | c | cnt | ++-------+----+-----+ +| | | 5 | +| str2 | | 5 | +| str3 | | 5 | +| str4 | | 5 | +| | -1 | 5 | +| | 0 | 5 | +| | 1 | 5 | +| | 2 | 5 | +| | 3 | 5 | +| | | 5 | ++-------+----+-----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY GROUPING +SETS (c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY rollup(c); ++----+-----+ +| c | cnt | ++----+-----+ +| -1 | 5 | +| 0 | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | +| | 25 | ++----+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY rollup(c_str, c); ++-------+----+-----+ +| c_str | c | cnt | ++-------+----+-----+ +| | -1 | 1 | +| | 0 | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | +| | | 5 | +| str2 | -1 | 1 | +| str2 | 0 | 1 | +| str2 | 1 | 1 | +| str2 | 2 | 1 | +| str2 | 3 | 1 | +| str2 | | 5 | +| str3 | -1 | 1 | +| str3 | 0 | 1 | +| str3 | 1 | 1 | +| str3 | 2 | 1 | +| str3 | 3 | 1 | +| str3 | | 5 | +| str4 | -1 | 1 | +| str4 | 0 | 1 | +| str4 | 1 | 1 | +| str4 | 2 | 1 | +| str4 | 3 | 1 | +| str4 | | 5 | +| | -1 | 1 | +| | 0 | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | +| | | 25 | +| | | 5 | ++-------+----+-----+ +(31 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY rollup(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY cube(c); ++----+-----+ +| c | cnt | ++----+-----+ +| -1 | 5 | +| 0 | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | +| | 25 | ++----+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY cube(c_str, c); ++-------+----+-----+ +| c_str | c | cnt | ++-------+----+-----+ +| | -1 | 1 | +| | 0 | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | +| | | 5 | +| str2 | -1 | 1 | +| str2 | 0 | 1 | +| str2 | 1 | 1 | +| str2 | 2 | 1 | +| str2 | 3 | 1 | +| str2 | | 5 | +| str3 | -1 | 1 | +| str3 | 0 | 1 | +| str3 | 1 | 1 | +| str3 | 2 | 1 | +| str3 | 3 | 1 | +| str3 | | 5 | +| str4 | -1 | 1 | +| str4 | 0 | 1 | +| str4 | 1 | 1 | +| str4 | 2 | 1 | +| str4 | 3 | 1 | +| str4 | | 5 | +| | -1 | 1 | +| | -1 | 5 | +| | 0 | 1 | +| | 0 | 5 | +| | 1 | 1 | +| | 1 | 5 | +| | 2 | 1 | +| | 2 | 5 | +| | 3 | 1 | +| | 3 | 5 | +| | | 25 | +| | | 5 | ++-------+----+-----+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY cube(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c +HAVING c='1'; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 5 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A2_B15 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c_str +HAVING c_str='str2'; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str2 | 5 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_mv_complex_with_null_and_empty_val, + count(*) cnt +FROM test_unnest +GROUP BY c_mv_complex_with_null_and_empty_val; ++--------------------------------------+-----+ +| c_mv_complex_with_null_and_empty_val | cnt | ++--------------------------------------+-----+ +| | 5 | +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| | 5 | ++--------------------------------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 5 | +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c_str, + c; ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | | 1 | +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | | 1 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | [2] | 1 | +| str2 | [3, [4, 5]] | 1 | +| str2 | | 1 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | [2] | 1 | +| str3 | [3, [4, 5]] | 1 | +| str3 | | 1 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | [2] | 1 | +| str4 | [3, [4, 5]] | 1 | +| str4 | | 1 | +| | | 1 | +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | | 1 | ++-------+-------------+-----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c_str; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY GROUPING +SETS (c); ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 5 | +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY GROUPING +SETS (c_str, + c); ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | | 5 | +| str2 | | 5 | +| str3 | | 5 | +| str4 | | 5 | +| | | 5 | +| | 1 | 5 | +| | [2] | 5 | +| | [3, [4, 5]] | 5 | +| | | 5 | +| | | 5 | ++-------+-------------+-----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY GROUPING +SETS (c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY rollup(c); ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 5 | +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| | 25 | +| | 5 | ++-------------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY rollup(c_str, c); ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | | 1 | +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | | 1 | +| | | 5 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | [2] | 1 | +| str2 | [3, [4, 5]] | 1 | +| str2 | | 1 | +| str2 | | 5 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | [2] | 1 | +| str3 | [3, [4, 5]] | 1 | +| str3 | | 1 | +| str3 | | 5 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | [2] | 1 | +| str4 | [3, [4, 5]] | 1 | +| str4 | | 1 | +| str4 | | 5 | +| | | 1 | +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | | 1 | +| | | 25 | +| | | 5 | ++-------+-------------+-----+ +(31 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY rollup(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY cube(c); ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 5 | +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| | 25 | +| | 5 | ++-------------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY cube(c_str, c); ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | | 1 | +| | 1 | 1 | +| | [2] | 1 | +| | [3, [4, 5]] | 1 | +| | | 1 | +| | | 5 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | [2] | 1 | +| str2 | [3, [4, 5]] | 1 | +| str2 | | 1 | +| str2 | | 5 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | [2] | 1 | +| str3 | [3, [4, 5]] | 1 | +| str3 | | 1 | +| str3 | | 5 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | [2] | 1 | +| str4 | [3, [4, 5]] | 1 | +| str4 | | 1 | +| str4 | | 5 | +| | | 1 | +| | | 5 | +| | 1 | 1 | +| | 1 | 5 | +| | [2] | 1 | +| | [2] | 5 | +| | [3, [4, 5]] | 1 | +| | [3, [4, 5]] | 5 | +| | | 1 | +| | | 25 | +| | | 5 | +| | | 5 | ++-------+-------------+-----+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY cube(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c +HAVING c='1'; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 5 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A3_B15 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c_str +HAVING c_str='str2'; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str2 | 5 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_mv_num_with_null_and_empty_val, + count(*) cnt +FROM test_unnest +GROUP BY c_mv_num_with_null_and_empty_val; ++----------------------------------+-----+ +| c_mv_num_with_null_and_empty_val | cnt | ++----------------------------------+-----+ +| | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | +| | 5 | ++----------------------------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ +| | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | +| | 5 | ++---+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c_str, + c; ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | +| | | 1 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | 2 | 1 | +| str2 | 3 | 1 | +| str2 | | 1 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | 2 | 1 | +| str3 | 3 | 1 | +| str3 | | 1 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | 2 | 1 | +| str4 | 3 | 1 | +| str4 | | 1 | +| | | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | +| | | 1 | ++-------+---+-----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c_str; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY GROUPING +SETS (c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | +| | 5 | ++---+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY GROUPING +SETS (c_str, + c); ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 5 | +| str2 | | 5 | +| str3 | | 5 | +| str4 | | 5 | +| | | 5 | +| | 1 | 5 | +| | 2 | 5 | +| | 3 | 5 | +| | | 5 | +| | | 5 | ++-------+---+-----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY GROUPING +SETS (c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY rollup(c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | +| | 25 | +| | 5 | ++---+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY rollup(c_str, c); ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | +| | | 1 | +| | | 5 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | 2 | 1 | +| str2 | 3 | 1 | +| str2 | | 1 | +| str2 | | 5 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | 2 | 1 | +| str3 | 3 | 1 | +| str3 | | 1 | +| str3 | | 5 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | 2 | 1 | +| str4 | 3 | 1 | +| str4 | | 1 | +| str4 | | 5 | +| | | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | +| | | 1 | +| | | 25 | +| | | 5 | ++-------+---+-----+ +(31 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY rollup(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY cube(c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | +| | 25 | +| | 5 | ++---+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY cube(c_str, c); ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 1 | +| | 1 | 1 | +| | 2 | 1 | +| | 3 | 1 | +| | | 1 | +| | | 5 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | 2 | 1 | +| str2 | 3 | 1 | +| str2 | | 1 | +| str2 | | 5 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | 2 | 1 | +| str3 | 3 | 1 | +| str3 | | 1 | +| str3 | | 5 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | 2 | 1 | +| str4 | 3 | 1 | +| str4 | | 1 | +| str4 | | 5 | +| | | 1 | +| | | 5 | +| | 1 | 1 | +| | 1 | 5 | +| | 2 | 1 | +| | 2 | 5 | +| | 3 | 1 | +| | 3 | 5 | +| | | 1 | +| | | 25 | +| | | 5 | +| | | 5 | ++-------+---+-----+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY cube(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c +HAVING c='1'; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 5 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A4_B15 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c_str +HAVING c_str='str2'; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str2 | 5 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_mv_complex_with_null_and_empty_row, + count(*) cnt +FROM test_unnest +GROUP BY c_mv_complex_with_null_and_empty_row; ++--------------------------------------+-----+ +| c_mv_complex_with_null_and_empty_row | cnt | ++--------------------------------------+-----+ +| | 3 | +| 1 | 3 | +| [2] | 3 | +| [3, [4, 5]] | 3 | +| | 5 | ++--------------------------------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 3 | +| 1 | 3 | +| [2] | 3 | +| [3, [4, 5]] | 3 | +| | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c_str, + c; ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | | 1 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | [2] | 1 | +| str2 | [3, [4, 5]] | 1 | +| str2 | | 1 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | [2] | 1 | +| str3 | [3, [4, 5]] | 1 | +| str3 | | 1 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | [2] | 1 | +| str4 | [3, [4, 5]] | 1 | +| str4 | | 1 | +| | | 1 | ++-------+-------------+-----+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c_str; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 1 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY GROUPING +SETS (c); ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 3 | +| 1 | 3 | +| [2] | 3 | +| [3, [4, 5]] | 3 | +| | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY GROUPING +SETS (c_str, + c); ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | | 1 | +| str2 | | 5 | +| str3 | | 5 | +| str4 | | 5 | +| | | 3 | +| | 1 | 3 | +| | [2] | 3 | +| | [3, [4, 5]] | 3 | +| | | 1 | +| | | 5 | ++-------+-------------+-----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY GROUPING +SETS (c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 1 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY rollup(c); ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 3 | +| 1 | 3 | +| [2] | 3 | +| [3, [4, 5]] | 3 | +| | 17 | +| | 5 | ++-------------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY rollup(c_str, c); ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | | 1 | +| | | 1 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | [2] | 1 | +| str2 | [3, [4, 5]] | 1 | +| str2 | | 1 | +| str2 | | 5 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | [2] | 1 | +| str3 | [3, [4, 5]] | 1 | +| str3 | | 1 | +| str3 | | 5 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | [2] | 1 | +| str4 | [3, [4, 5]] | 1 | +| str4 | | 1 | +| str4 | | 5 | +| | | 1 | +| | | 1 | +| | | 17 | ++-------+-------------+-----+ +(23 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY rollup(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 1 | +| | 17 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY cube(c); ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 3 | +| 1 | 3 | +| [2] | 3 | +| [3, [4, 5]] | 3 | +| | 17 | +| | 5 | ++-------------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY cube(c_str, c); ++-------+-------------+-----+ +| c_str | c | cnt | ++-------+-------------+-----+ +| | | 1 | +| | | 1 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | [2] | 1 | +| str2 | [3, [4, 5]] | 1 | +| str2 | | 1 | +| str2 | | 5 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | [2] | 1 | +| str3 | [3, [4, 5]] | 1 | +| str3 | | 1 | +| str3 | | 5 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | [2] | 1 | +| str4 | [3, [4, 5]] | 1 | +| str4 | | 1 | +| str4 | | 5 | +| | | 3 | +| | 1 | 3 | +| | [2] | 3 | +| | [3, [4, 5]] | 3 | +| | | 1 | +| | | 1 | +| | | 17 | +| | | 5 | ++-------+-------------+-----+ +(28 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY cube(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 1 | +| | 17 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c +HAVING c='1'; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A5_B15 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c_str +HAVING c_str='str2'; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str2 | 5 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_mv_num_with_null_and_empty_row, + count(*) cnt +FROM test_unnest +GROUP BY c_mv_num_with_null_and_empty_row; ++----------------------------------+-----+ +| c_mv_num_with_null_and_empty_row | cnt | ++----------------------------------+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | +| 3 | 3 | +| | 5 | ++----------------------------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | +| 3 | 3 | +| | 5 | ++---+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c_str, + c; ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 1 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | 2 | 1 | +| str2 | 3 | 1 | +| str2 | | 1 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | 2 | 1 | +| str3 | 3 | 1 | +| str3 | | 1 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | 2 | 1 | +| str4 | 3 | 1 | +| str4 | | 1 | +| | | 1 | ++-------+---+-----+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c_str; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 1 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY GROUPING +SETS (c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | +| 3 | 3 | +| | 5 | ++---+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY GROUPING +SETS (c_str, + c); ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 1 | +| str2 | | 5 | +| str3 | | 5 | +| str4 | | 5 | +| | | 3 | +| | 1 | 3 | +| | 2 | 3 | +| | 3 | 3 | +| | | 1 | +| | | 5 | ++-------+---+-----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY GROUPING +SETS (c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 1 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY rollup(c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | +| 3 | 3 | +| | 17 | +| | 5 | ++---+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY rollup(c_str, c); ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 1 | +| | | 1 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | 2 | 1 | +| str2 | 3 | 1 | +| str2 | | 1 | +| str2 | | 5 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | 2 | 1 | +| str3 | 3 | 1 | +| str3 | | 1 | +| str3 | | 5 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | 2 | 1 | +| str4 | 3 | 1 | +| str4 | | 1 | +| str4 | | 5 | +| | | 1 | +| | | 1 | +| | | 17 | ++-------+---+-----+ +(23 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY rollup(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 1 | +| | 17 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY cube(c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 3 | +| 1 | 3 | +| 2 | 3 | +| 3 | 3 | +| | 17 | +| | 5 | ++---+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY cube(c_str, c); ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 1 | +| | | 1 | +| str2 | | 1 | +| str2 | 1 | 1 | +| str2 | 2 | 1 | +| str2 | 3 | 1 | +| str2 | | 1 | +| str2 | | 5 | +| str3 | | 1 | +| str3 | 1 | 1 | +| str3 | 2 | 1 | +| str3 | 3 | 1 | +| str3 | | 1 | +| str3 | | 5 | +| str4 | | 1 | +| str4 | 1 | 1 | +| str4 | 2 | 1 | +| str4 | 3 | 1 | +| str4 | | 1 | +| str4 | | 5 | +| | | 3 | +| | 1 | 3 | +| | 2 | 3 | +| | 3 | 3 | +| | | 1 | +| | | 1 | +| | | 17 | +| | | 5 | ++-------+---+-----+ +(28 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY cube(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 1 | +| | 17 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c +HAVING c='1'; ++---+-----+ +| c | cnt | ++---+-----+ +| 1 | 3 | ++---+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A6_B15 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c_str +HAVING c_str='str2'; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str2 | 5 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_mv_all_null_and_empty_val, + count(*) cnt +FROM test_unnest +GROUP BY c_mv_all_null_and_empty_val; ++-----------------------------+-----+ +| c_mv_all_null_and_empty_val | cnt | ++-----------------------------+-----+ +| | 10 | +| | 15 | ++-----------------------------+-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c; ++---+-----+ +| c | cnt | ++---+-----+ +| | 10 | +| | 15 | ++---+-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c_str, + c; ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 2 | +| | | 3 | +| str2 | | 2 | +| str2 | | 3 | +| str3 | | 2 | +| str3 | | 3 | +| str4 | | 2 | +| str4 | | 3 | +| | | 2 | +| | | 3 | ++-------+---+-----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c_str; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY GROUPING +SETS (c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 10 | +| | 15 | ++---+-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY GROUPING +SETS (c_str, + c); ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 5 | +| str2 | | 5 | +| str3 | | 5 | +| str4 | | 5 | +| | | 10 | +| | | 15 | +| | | 5 | ++-------+---+-----+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY GROUPING +SETS (c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY rollup(c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 10 | +| | 15 | +| | 25 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY rollup(c_str, c); ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 2 | +| | | 3 | +| | | 5 | +| str2 | | 2 | +| str2 | | 3 | +| str2 | | 5 | +| str3 | | 2 | +| str3 | | 3 | +| str3 | | 5 | +| str4 | | 2 | +| str4 | | 3 | +| str4 | | 5 | +| | | 2 | +| | | 25 | +| | | 3 | +| | | 5 | ++-------+---+-----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY rollup(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY cube(c); ++---+-----+ +| c | cnt | ++---+-----+ +| | 10 | +| | 15 | +| | 25 | ++---+-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY cube(c_str, c); ++-------+---+-----+ +| c_str | c | cnt | ++-------+---+-----+ +| | | 2 | +| | | 3 | +| | | 5 | +| str2 | | 2 | +| str2 | | 3 | +| str2 | | 5 | +| str3 | | 2 | +| str3 | | 3 | +| str3 | | 5 | +| str4 | | 2 | +| str4 | | 3 | +| str4 | | 5 | +| | | 10 | +| | | 2 | +| | | 15 | +| | | 25 | +| | | 3 | +| | | 5 | ++-------+---+-----+ +(18 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY cube(c_str); ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | +| | 25 | +| | 5 | ++-------+-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c +HAVING c='1'; ++---+-----+ +| c | cnt | ++---+-----+ ++---+-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_group_by TEST_ID: A7_B15 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c_str +HAVING c_str='str2'; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str2 | 5 | ++-------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | +| my_empty | 5 | +| my_null | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| my_null | 5 | +| my_empty | 5 | +| [3, [4, 5]] | 5 | +| [2] | 5 | +| 1 | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + ORDER BY c ASC); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + ORDER BY 1 DESC); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c_str +ORDER BY c_str ASC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +GROUP BY c_str +ORDER BY 1 DESC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str4 | 5 | +| str3 | 5 | +| str2 | 5 | +| | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +ORDER BY c_str ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + ORDER BY c_str ASC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A1_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++----+-----+ +| c | cnt | ++----+-----+ +| -1 | 5 | +| 0 | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | ++----+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++----+-----+ +| c | cnt | ++----+-----+ +| 3 | 5 | +| 2 | 5 | +| 1 | 5 | +| 0 | 5 | +| -1 | 5 | ++----+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + ORDER BY c ASC); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + ORDER BY 1 DESC); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c_str +ORDER BY c_str ASC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +GROUP BY c_str +ORDER BY 1 DESC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str4 | 5 | +| str3 | 5 | +| str2 | 5 | +| | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +ORDER BY c_str ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + ORDER BY c_str ASC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A2_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 5 | +| | 5 | +| 1 | 5 | +| [2] | 5 | +| [3, [4, 5]] | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| [3, [4, 5]] | 5 | +| [2] | 5 | +| 1 | 5 | +| | 5 | +| | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + ORDER BY c ASC); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | +| | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + ORDER BY 1 DESC); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | +| | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c_str +ORDER BY c_str ASC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +GROUP BY c_str +ORDER BY 1 DESC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str4 | 5 | +| str3 | 5 | +| str2 | 5 | +| | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +ORDER BY c_str ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + ORDER BY c_str ASC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A3_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++---+-----+ +| c | cnt | ++---+-----+ +| | 5 | +| | 5 | +| 1 | 5 | +| 2 | 5 | +| 3 | 5 | ++---+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++---+-----+ +| c | cnt | ++---+-----+ +| 3 | 5 | +| 2 | 5 | +| 1 | 5 | +| | 5 | +| | 5 | ++---+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + ORDER BY c ASC); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | +| | ++---+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + ORDER BY 1 DESC); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | +| | ++---+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c_str +ORDER BY c_str ASC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +GROUP BY c_str +ORDER BY 1 DESC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str4 | 5 | +| str3 | 5 | +| str2 | 5 | +| | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +ORDER BY c_str ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + ORDER BY c_str ASC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A4_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| | 5 | +| | 3 | +| 1 | 3 | +| [2] | 3 | +| [3, [4, 5]] | 3 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++-------------+-----+ +| c | cnt | ++-------------+-----+ +| [3, [4, 5]] | 3 | +| [2] | 3 | +| 1 | 3 | +| | 3 | +| | 5 | ++-------------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + ORDER BY c ASC); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | +| | ++-------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + ORDER BY 1 DESC); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | +| | ++-------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 17 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 17 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c_str +ORDER BY c_str ASC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +GROUP BY c_str +ORDER BY 1 DESC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str4 | 5 | +| str3 | 5 | +| str2 | 5 | +| | 1 | +| | 1 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +ORDER BY c_str ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + ORDER BY c_str ASC); ++-------+ +| c_str | ++-------+ +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | ++-------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A5_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| c_str | ++-------+ +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | ++-------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++---+-----+ +| c | cnt | ++---+-----+ +| | 5 | +| | 3 | +| 1 | 3 | +| 2 | 3 | +| 3 | 3 | ++---+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++---+-----+ +| c | cnt | ++---+-----+ +| 3 | 3 | +| 2 | 3 | +| 1 | 3 | +| | 3 | +| | 5 | ++---+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + ORDER BY c ASC); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | +| | ++---+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + ORDER BY 1 DESC); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | +| | ++---+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 17 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 17 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c_str +ORDER BY c_str ASC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 1 | +| | 1 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +GROUP BY c_str +ORDER BY 1 DESC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str4 | 5 | +| str3 | 5 | +| str2 | 5 | +| | 1 | +| | 1 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +ORDER BY c_str ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + ORDER BY c_str ASC); ++-------+ +| c_str | ++-------+ +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | ++-------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A6_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| c_str | ++-------+ +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | ++-------+ +(17 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c +ORDER BY c ASC; ++---+-----+ +| c | cnt | ++---+-----+ +| | 15 | +| | 10 | ++---+-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c +ORDER BY 1 DESC; ++---+-----+ +| c | cnt | ++---+-----+ +| | 10 | +| | 15 | ++---+-----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +ORDER BY c ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + ORDER BY c ASC); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT c + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + ORDER BY 1 DESC); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY __time +ORDER BY __time ASC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY __time +ORDER BY __time DESC; ++-------------------------+-----+ +| __time | cnt | ++-------------------------+-----+ +| 2022-01-01 00:00:00.000 | 25 | ++-------------------------+-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +ORDER BY __time ASC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +ORDER BY 1 DESC; ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + ORDER BY __time ASC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B12 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT __time +FROM + (SELECT __time + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + ORDER BY 1 DESC); ++-------------------------+ +| __time | ++-------------------------+ +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | +| 2022-01-01 00:00:00.000 | ++-------------------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B13 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c_str +ORDER BY c_str ASC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| | 5 | +| | 5 | +| str2 | 5 | +| str3 | 5 | +| str4 | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B14 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str, + count(*) cnt +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +GROUP BY c_str +ORDER BY 1 DESC; ++-------+-----+ +| c_str | cnt | ++-------+-----+ +| str4 | 5 | +| str3 | 5 | +| str2 | 5 | +| | 5 | +| | 5 | ++-------+-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +ORDER BY c_str ASC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +ORDER BY 1 DESC; +CannotBuildQueryException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B17 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + ORDER BY c_str ASC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_order_by TEST_ID: A7_B18 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_str +FROM + (SELECT c_str + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + ORDER BY 1 DESC); ++-------+ +| c_str | ++-------+ +| | +| | +| | +| | +| | +| str2 | +| str2 | +| str2 | +| str2 | +| str2 | +| str3 | +| str3 | +| str3 | +| str3 | +| str3 | +| str4 | +| str4 | +| str4 | +| str4 | +| str4 | +| | +| | +| | +| | +| | ++-------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A1_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 24 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A1_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A2_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 24 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A2_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A3_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 24 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A3_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A4_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 24 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A4_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A5_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 16 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A5_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A6_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 16 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A6_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + LIMIT 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A7_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 24 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_limit_offset TEST_ID: A7_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + LIMIT 1 + OFFSET 1); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest t2 ON u.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +INNER JOIN test_unnest t2, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t2.c_long AS char)=u.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +INNER JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +INNER JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +INNER JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +INNER JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +INNER JOIN t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +INNER JOIN t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +INNER JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +INNER JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A1_B31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +INNER JOIN t1 t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest t2 ON u.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +JOIN test_unnest t2, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t2.c_long AS char)=u.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +JOIN t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +JOIN t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +JOIN t1 t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +JOIN t1 t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +JOIN t1 t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A2_B31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +JOIN t1 t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest t2 ON u.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +LEFT JOIN test_unnest t2, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t2.c_long AS char)=u.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +LEFT JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +LEFT JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +LEFT JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +LEFT JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +LEFT JOIN t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +LEFT JOIN t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +LEFT JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +LEFT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A3_B31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +LEFT JOIN t1 t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest t2 ON u.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +RIGHT JOIN test_unnest t2, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t2.c_long AS char)=u.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +RIGHT JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +RIGHT JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +RIGHT JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +RIGHT JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +RIGHT JOIN t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +RIGHT JOIN t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +RIGHT JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +RIGHT JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A4_B31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +RIGHT JOIN t1 t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest t2 ON u.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +FULL JOIN test_unnest t2, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t2.c_long AS char)=u.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +FULL JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +FULL JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +FULL JOIN test_unnest t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +FULL JOIN test_unnest t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +FULL JOIN t2 ON t2.c_long=t1.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +FULL JOIN t2 ON t2.c=cast(t1.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B12 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B13 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B14 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B15 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest t2, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON cast(t1.c_long AS char)=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +FULL JOIN test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) t2 AS u(c) ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +FULL JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.c_long=t2.c_long +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.c=cast(t2.c_long AS char) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.c_long=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A5_B31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +FULL JOIN t1 t2 ON t1.c=t2.c +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +CROSS JOIN test_unnest t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN test_unnest t2, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +CROSS JOIN test_unnest t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1 +CROSS JOIN test_unnest t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1 +CROSS JOIN t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(45 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c1 +FROM test_unnest t1 +CROSS JOIN unnest(mv_to_array(t1.c_mv_num_with_null_and_empty_val)) AS u1(c1) +CROSS JOIN test_unnest t2 +CROSS JOIN unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) AS u2(c2) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+----+ +| c_str | c_long | c1 | ++-------+--------+----+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+----+ +(225 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(225 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +CROSS JOIN + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(225 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A6_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1 +CROSS JOIN t1 t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(225 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t2.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c), + test_unnest t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c_long=t2.c_long; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c), + test_unnest t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND u.c=cast(t2.c_long AS char); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1, + test_unnest t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c_long=t2.c_long; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1, + test_unnest t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c=cast(t2.c_long AS char); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long=t1.c_long; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t2.c=cast(t1.c_long AS char); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1, + test_unnest t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c_long=t2.c_long; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM t1, + test_unnest t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c=cast(t2.c_long AS char); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long=t1.c_long; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | | ++-------+--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B11 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t2 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + c +FROM test_unnest t1, + t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t2.c=cast(t1.c_long AS char); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | ++-------+--------+---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B16 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c1 +FROM test_unnest t1, + unnest(mv_to_array(t1.c_mv_num_with_null_and_empty_val)) AS u1(c1), + test_unnest, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) t2 AS u2(c2) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c_long=t2.c_long; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B17 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c1 +FROM test_unnest t1, + unnest(mv_to_array(t1.c_mv_num_with_null_and_empty_val)) AS u1(c1), + test_unnest, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) t2 AS u2(c2) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c1=cast(t2.c_long AS char); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B18 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c1 +FROM test_unnest t1, + unnest(mv_to_array(t1.c_mv_num_with_null_and_empty_val)) AS u1(c1), + test_unnest, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) t2 AS u2(c2) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND cast(t1.c_long AS char)=t2.c2; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B19 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + c1 +FROM test_unnest t1, + unnest(mv_to_array(t1.c_mv_num_with_null_and_empty_val)) AS u1(c1), + test_unnest, + unnest(mv_to_array(t2.c_mv_num_with_null_and_empty_val)) t2 AS u2(c2) +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c1=t2.c2; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B20 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c_long=t2.c_long; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B21 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c=cast(t2.c_long AS char); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B22 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND cast(t1.c_long AS char)=t2.c; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B23 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT t1.c_str, + t1.c_long, + t1.c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c=t2.c; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B24 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c_long=t2.c_long; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B25 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c=cast(t2.c_long AS char); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B26 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND cast(t1.c_long AS char)=t2.c; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B27 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1, + + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c=t2.c; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B28 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1, + t1 t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c_long=t2.c_long; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | | ++-------+--------+---+ +(75 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B29 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1, + t1 t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c=cast(t2.c_long AS char); ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B30 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1, + t1 t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND cast(t1.c_long AS char)=t2.c; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | | +| | 1 | | +| | 1 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | ++-------+--------+---+ +(30 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_join TEST_ID: A7_B31 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +WITH t1 AS + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +SELECT t1.c_str, + t1.c_long, + t1.c +FROM t1, + t1 t2 +WHERE t1.c_long IN (0, + 1, + 2, + 999) + AND t2.c_long IN (0, + 1, + 2, + 999) + AND t1.c=t2.c; ++-------+--------+---+ +| c_str | c_long | c | ++-------+--------+---+ +| | 1 | | +| | 1 | | +| | 1 | | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 1 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 2 | +| | 1 | 3 | +| | 1 | 3 | +| | 1 | 3 | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 1 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 2 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| str2 | 2 | 3 | +| | 0 | | +| | 0 | | +| | 0 | | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 1 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 2 | +| | 0 | 3 | +| | 0 | 3 | +| | 0 | 3 | ++-------+--------+---+ +(36 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A1_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long IN (2, + 999)); ++--------+-------------+ +| c_long | c | ++--------+-------------+ +| 0 | 1 | +| 0 | [2] | +| 0 | [3, [4, 5]] | +| 0 | my_empty | +| 0 | my_null | +| 1 | 1 | +| 1 | [2] | +| 1 | [3, [4, 5]] | +| 1 | my_empty | +| 1 | my_null | +| 2 | 1 | +| 2 | [2] | +| 2 | [3, [4, 5]] | +| 2 | my_empty | +| 2 | my_null | ++--------+-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A1_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A2_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long IN (2, + 999)); ++--------+----+ +| c_long | c | ++--------+----+ +| 0 | -1 | +| 0 | 0 | +| 0 | 1 | +| 0 | 2 | +| 0 | 3 | +| 1 | -1 | +| 1 | 0 | +| 1 | 1 | +| 1 | 2 | +| 1 | 3 | +| 2 | -1 | +| 2 | 0 | +| 2 | 1 | +| 2 | 2 | +| 2 | 3 | ++--------+----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A2_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A3_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (2, + 999)); ++--------+-------------+ +| c_long | c | ++--------+-------------+ +| 0 | | +| 0 | 1 | +| 0 | [2] | +| 0 | [3, [4, 5]] | +| 0 | | +| 1 | | +| 1 | 1 | +| 1 | [2] | +| 1 | [3, [4, 5]] | +| 1 | | +| 2 | | +| 2 | 1 | +| 2 | [2] | +| 2 | [3, [4, 5]] | +| 2 | | ++--------+-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A3_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A4_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (2, + 999)); ++--------+---+ +| c_long | c | ++--------+---+ +| 0 | | +| 0 | 1 | +| 0 | 2 | +| 0 | 3 | +| 0 | | +| 1 | | +| 1 | 1 | +| 1 | 2 | +| 1 | 3 | +| 1 | | +| 2 | | +| 2 | 1 | +| 2 | 2 | +| 2 | 3 | +| 2 | | ++--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A4_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A5_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (2, + 999)); ++--------+-------------+ +| c_long | c | ++--------+-------------+ +| 0 | | +| 1 | | +| 2 | | +| 2 | 1 | +| 2 | [2] | +| 2 | [3, [4, 5]] | +| 2 | | ++--------+-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A5_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A6_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (2, + 999)); ++--------+---+ +| c_long | c | ++--------+---+ +| 0 | | +| 1 | | +| 2 | | +| 2 | 1 | +| 2 | 2 | +| 2 | 3 | +| 2 | | ++--------+---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A6_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A7_B1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long, + c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 999) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long IN (2, + 999)); ++--------+---+ +| c_long | c | ++--------+---+ +| 0 | | +| 0 | | +| 0 | | +| 0 | | +| 0 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 1 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | +| 2 | | ++--------+---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_union_all TEST_ID: A7_B2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + UNION ALL SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# Total query count 579 Positive tests: 455 Negative tests: 124 +#------------------------------------------------------------------------- diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_filter.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_filter.iq new file mode 100644 index 000000000000..2c0abdc71da9 --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_filter.iq @@ -0,0 +1,46780 @@ +!set useApproximateCountDistinct false +!use druidtest://?componentSupplier=StandardComponentSupplier&datasets=sql/src/test/quidem/qatests/qaUnnest/mv&numMergeBuffers=3 +!set outputformat mysql +SELECT * +FROM test_unnest; ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| __time | c_str | c_long | c_float | c_double | c_mv_complex | c_mv_num | c_mv_complex_with_null_and_empty_val | c_mv_num_with_null_and_empty_val | c_mv_complex_with_null_and_empty_row | c_mv_num_with_null_and_empty_row | c_mv_all_null_and_empty_val | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c='1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c<>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c<>'1'); ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>'1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c<>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c<>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c>'1'); ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>'1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c>='1'); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>='1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c<'1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<'1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c<='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<='1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c<='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c IS NOT NULL); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | +| my_null | ++----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long=1 + AND c='1'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1 + AND c='1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long<>1 + AND c<>'1'); ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1 + AND c<>'1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long<>1 + AND c<>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long>1 + AND c>'1'); ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1 + AND c>'1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long>1 + AND c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long>=1 + AND c>='1'); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1 + AND c>='1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long>=1 + AND c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long<1 + AND c<'1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1 + AND c<'1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long<=1 + AND c<='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1 + AND c<='1'), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_str IS NULL + AND c IS NULL); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL + AND c IS NULL), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_str IS NOT NULL + AND c IS NOT NULL); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL + AND c IS NOT NULL), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----------+ +| c | ++----------+ +| 1 | +| 1 | +| 1 | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++----------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_complex)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long=1; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long=1); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long=1; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long=1; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<>1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long<>1); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long<>1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<>1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long>1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long>1); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long>1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long>1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long>=1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long>=1); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long>=1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long>=1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<1; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long<1); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long<1; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<1; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<=1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long<=1); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long<=1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long<=1; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IS NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_str IS NULL); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_str IS NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IS NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IS NOT NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_str IS NOT NULL); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_str IS NOT NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IS NOT NULL; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | +| my_null | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++-------------+ +| c | ++-------------+ +| 1 | +| [2] | +| [3, [4, 5]] | +| my_empty | +| my_null | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_null | +| my_null | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))), unnest(mv_to_array(c_mv_complex)) AS u(c); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A1_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| my_empty | +| my_empty | +| my_empty | +| my_null | +| my_null | +| my_null | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c='1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c<>'1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c<>'1'); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>'1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c<>'1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c<>'1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c>'1'); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>'1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c>='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>='1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c<'1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c<'1'); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<'1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c<'1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c<'1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c<='1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c<='1'); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<='1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c<='1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c<='1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IS NOT NULL; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c IS NOT NULL); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c IS NOT NULL; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IS NOT NULL; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(25 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long=1 + AND c='1'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1 + AND c='1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long<>1 + AND c<>'1'); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1 + AND c<>'1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long<>1 + AND c<>'1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long>1 + AND c>'1'); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1 + AND c>'1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long>=1 + AND c>='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1 + AND c>='1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++----+ +| c | ++----+ +| -1 | +| 0 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long<1 + AND c<'1'); ++----+ +| c | ++----+ +| -1 | +| 0 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1 + AND c<'1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long<1 + AND c<'1'; ++----+ +| c | ++----+ +| -1 | +| 0 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++----+ +| c | ++----+ +| -1 | +| 0 | ++----+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long<=1 + AND c<='1'); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1 + AND c<='1'), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long<=1 + AND c<='1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | ++----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_str IS NULL + AND c IS NULL); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL + AND c IS NULL), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_str IS NOT NULL + AND c IS NOT NULL); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL + AND c IS NOT NULL), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | ++----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_num)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long=1; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long=1); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long=1; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long=1; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<>1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long<>1); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long<>1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<>1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long>1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long>1); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long>1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long>1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long>=1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long>=1); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long>=1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long>=1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<1; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long<1); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long<1; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<1; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<=1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long<=1); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long<=1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long<=1; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IS NULL; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_str IS NULL); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_str IS NULL; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IS NULL; ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IS NOT NULL; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_str IS NOT NULL); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_str IS NOT NULL; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IS NOT NULL; ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++----+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++----+ +| c | ++----+ +| -1 | +| 0 | +| 1 | +| 2 | +| 3 | ++----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++----+ +| c | ++----+ +| -1 | +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | ++----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))), unnest(mv_to_array(c_mv_num)) AS u(c); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A2_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++----+ +| c | ++----+ +| -1 | +| -1 | +| -1 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c<>'1'); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c>'1'); ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c>='1'); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c<'1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c<='1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c IS NOT NULL); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long=1 + AND c='1'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1 + AND c='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long<>1 + AND c<>'1'); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1 + AND c<>'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long<>1 + AND c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long>1 + AND c>'1'); ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1 + AND c>'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long>1 + AND c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long>=1 + AND c>='1'); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1 + AND c>='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long>=1 + AND c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long<1 + AND c<'1'); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1 + AND c<'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long<=1 + AND c<='1'); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1 + AND c<='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_str IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL + AND c IS NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_str IS NOT NULL + AND c IS NOT NULL); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL + AND c IS NOT NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long=1; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long=1); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long=1; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long=1; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long<>1); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long<>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long>1); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long>=1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long>=1); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long>=1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long>=1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<1; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long<1); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long<1; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<1; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<=1; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long<=1); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long<=1; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long<=1; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_str IS NULL); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_str IS NULL; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_str IS NOT NULL); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_str IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++-------------+ +| c | ++-------------+ +| | +| | +| 1 | +| 1 | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A3_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c<>'1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c>'1'); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c>='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c<'1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c<='1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c IS NOT NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long=1 + AND c='1'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1 + AND c='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long<>1 + AND c<>'1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1 + AND c<>'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long<>1 + AND c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long>1 + AND c>'1'); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1 + AND c>'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long>=1 + AND c>='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1 + AND c>='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long<1 + AND c<'1'); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1 + AND c<'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long<=1 + AND c<='1'); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1 + AND c<='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_str IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL + AND c IS NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_str IS NOT NULL + AND c IS NOT NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL + AND c IS NOT NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long=1; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long=1); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long=1; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long=1; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<>1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long<>1); ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long<>1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<>1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long>1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long>1); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long>1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long>1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long>=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long>=1); ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long>=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long>=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<1; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long<1); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long<1; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<1; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long<=1); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_str IS NULL); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_str IS NOT NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_str IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++---+ +| c | ++---+ +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A4_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c<>'1'); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c>'1'); ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c>='1'); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c<'1'); ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c<='1'); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c IS NOT NULL); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long=1 + AND c='1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1 + AND c='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long<>1 + AND c<>'1'); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1 + AND c<>'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long<>1 + AND c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long>1 + AND c>'1'); ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1 + AND c>'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long>1 + AND c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++-------------+ +| c | ++-------------+ +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long>=1 + AND c>='1'); ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1 + AND c>='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long>=1 + AND c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++-------------+ +| c | ++-------------+ +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long<1 + AND c<'1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1 + AND c<'1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long<=1 + AND c<='1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1 + AND c<='1'), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_str IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL + AND c IS NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_str IS NOT NULL + AND c IS NOT NULL); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL + AND c IS NOT NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | ++-------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long=1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long=1); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long=1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long=1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long<>1); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long<>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long>1); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long>1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long>=1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long>=1); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long>=1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long>=1; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long<1); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long<1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long<=1); ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_str IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_str IS NOT NULL); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_str IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NOT NULL; ++-------------+ +| c | ++-------------+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| [2] | +| [2] | +| [2] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| [3, [4, 5]] | +| | +| | +| | +| | ++-------------+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | ++-------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | ++-------------+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A5_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_complex_with_null_and_empty_row)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++-------------+ +| c | ++-------------+ +| | +| 1 | +| [2] | +| [3, [4, 5]] | +| | +| | +| | ++-------------+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c<>'1'); ++---+ +| c | ++---+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c>'1'); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c>='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c<'1'); ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c<='1'); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c IS NOT NULL); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long=1 + AND c='1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1 + AND c='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long<>1 + AND c<>'1'); ++---+ +| c | ++---+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1 + AND c<>'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long<>1 + AND c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long>1 + AND c>'1'); ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1 + AND c>'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long>=1 + AND c>='1'); ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1 + AND c>='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long<1 + AND c<'1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1 + AND c<'1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long<=1 + AND c<='1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1 + AND c<='1'), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_str IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL + AND c IS NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_str IS NOT NULL + AND c IS NOT NULL); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL + AND c IS NOT NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++---+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ +| 1 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ +| 1 | +| 2 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ +| 1 | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| 1 | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long=1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long=1); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long=1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long=1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<>1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long<>1); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long<>1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<>1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long>1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long>1); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long>1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long>1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long>=1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long>=1); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long>=1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long>=1; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long<1); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long<1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<1; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long<=1); ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_str IS NULL); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | ++---+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_str IS NOT NULL); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_str IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | +| | ++---+ +(16 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A6_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_num_with_null_and_empty_row)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++---+ +| c | ++---+ +| | +| 1 | +| 2 | +| 3 | +| | +| | +| | ++---+ +(7 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c='1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c='1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B1_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B1_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c<>'1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<>'1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c>'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c>'1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B3_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>'1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c>'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c>'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c>='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c>='1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B4_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c>='1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B4_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c>='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c>='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c<'1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B5_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<'1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B5_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c<'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c<='1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B6_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c<='1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B7_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B8_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B9_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NULL), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B9_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B9_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c IS NOT NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B10_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IS NOT NULL), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B10_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B10_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B11_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B11_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B11_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B12_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B12_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B12_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B13_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B13_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B13_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B14_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B14_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B14_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B15_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B15_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B15_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B16_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B16_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B16_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long=1 + AND c='1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B17_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1 + AND c='1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long=1 + AND c='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long<>1 + AND c<>'1'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B18_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1 + AND c<>'1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long<>1 + AND c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<>1 + AND c<>'1'; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long>1 + AND c>'1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B19_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1 + AND c>'1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long>1 + AND c>'1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long>=1 + AND c>='1'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B20_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1 + AND c>='1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long>=1 + AND c>='1'; ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long<1 + AND c<'1'); ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B21_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1 + AND c<'1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<1 + AND c<'1'; ++---+ +| c | ++---+ +| | +| | ++---+ +(2 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long<=1 + AND c<='1'); ++---+ +| c | ++---+ +| | +| | +| | +| | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B22_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1 + AND c<='1'), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<=1 + AND c<='1'; ++---+ +| c | ++---+ +| | +| | +| | +| | ++---+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B23_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999)), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE NOT (c_long<>0 + AND c_long<>1 + AND c_long<>2) + AND (NOT c<>'' + OR NOT c<>'my_null' + OR NOT c<>'my_empty' + OR NOT c<>'1' + OR NOT c<>'-1' + OR NOT c<>'0' + OR NOT c<>'999' + OR NOT c<>999) + AND (NOT c='[2]' + OR NOT c='[3, [4, 5]]' + OR NOT c='2' + OR NOT c='3' + OR NOT c='999' + OR NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B24_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_long=0 + OR c_long=1 + OR c_long=2) + AND (c='' + OR c='my_null' + OR c='my_empty' + OR c='1' + OR c='-1' + OR c='0' + OR c='999' + OR c=999) + AND NOT c='[2]' + AND NOT c='[3, [4, 5]]' + AND NOT c='2' + AND NOT c='3' + AND NOT c='999' + AND NOT c=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_str IS NULL + AND c IS NULL); ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B25_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL + AND c IS NULL), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL + AND c IS NULL; ++---+ +| c | ++---+ +| | +| | +| | ++---+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_str IS NOT NULL + AND c IS NOT NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL + AND c IS NOT NULL), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B26_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL + AND c IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(8 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B27_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS TRUE + AND c_long IN (3, + 4) IS NOT TRUE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS TRUE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B28_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) IS NOT FALSE + AND c_long IN (3, + 4) IS FALSE + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) IS NOT FALSE + AND c IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4')), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B29_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B29_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4) + AND (c BETWEEN '1' AND '2') + AND (c NOT BETWEEN '3' AND '4'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%')), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B30_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B30_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c like '1%') + AND (c not like '3%'); ++---+ +| c | ++---+ ++---+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B31_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999)), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND c_long NOT IN (3, + 4) + AND c IN ('', + 'my_null', + 'my_empty', + '1', + '-1', + '0', + '999', + 999) + AND c NOT IN ('[2]', + '[3, [4, 5]]', + '2', + '3', + '999', + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | ++---+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B32_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B32_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B32_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col))), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B32_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B32_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4)) AS t(col)) + AND c IN + (SELECT col + FROM ( + VALUES(''),('my_null'),('my_empty'),('1'),('-1'),('0'),('999')) AS t(col)) + AND c NOT IN + (SELECT col + FROM ( + VALUES('[2]'),('[3, [4, 5]]'),('2'),('3'),('999')) AS t(col)); +Unhandled Query Planning Failure +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long=1); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long=1), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<>1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long<>1); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<>1), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long<>1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<>1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long>1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long>1); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>1), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long>1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long>1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long>=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long>=1); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B36_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long>=1), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B36_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long>=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B36_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long>=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B37_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B37_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long<1); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B37_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<1), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B37_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long<1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B37_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B38_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B38_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long<=1); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B38_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long<=1), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B38_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B38_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long<=1; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B39_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B39_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B39_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999)), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B39_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B39_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (NOT c_str<>'' + OR NOT c_str<>'str2' + OR NOT c_long<>0 + OR NOT c_long<>1 + OR NOT c_long<>2 + OR NOT c_long<>999) + AND (NOT c_str='str3' + OR NOT c_str='str4' + OR NOT c_long=3 + OR NOT c_long=4 + OR NOT c_long=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B40_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B40_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B40_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B40_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B40_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_str='' + OR c_str='str2' + OR c_long=0 + OR c_long=1 + OR c_long=2 + OR c_long=999) + AND NOT c_str='str3' + AND NOT c_str='str4' + AND NOT c_long=3 + AND NOT c_long=4 + AND NOT c_long=999; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B41_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B41_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_str IS NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B41_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NULL), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B41_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B41_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IS NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B42_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B42_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_str IS NOT NULL); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B42_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IS NOT NULL), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B42_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_str IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B42_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IS NOT NULL; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(20 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B43_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B43_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B43_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B43_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B43_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS TRUE + AND c_str IN ('str3', + 'str4', + 999) IS NOT TRUE + AND c_long IN (0, + 1, + 2, + 999) IS TRUE + AND c_long IN (3, + 4, + 999) IS NOT TRUE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B44_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B44_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B44_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B44_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B44_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) IS NOT FALSE + AND c_str IN ('str3', + 'str4', + 999) IS FALSE + AND c_long IN (0, + 1, + 2, + 999) IS NOT FALSE + AND c_long IN (3, + 4, + 999) IS FALSE; ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B45_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B45_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B45_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4)), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B45_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B45_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_long BETWEEN 0 AND 2) + AND (c_long NOT BETWEEN 3 AND 4); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B46_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B46_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B46_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4')), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B46_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B46_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE (c_str like '%2') + AND (c_str not like '%3') + AND (c_str not like '%4'); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | ++---+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B47_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B47_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B47_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999)), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B47_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B47_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_str IN ('', + 'str2', + 999) + AND c_str NOT IN ('str3', + 'str4', + 999) + AND c_long IN (0, + 1, + 2, + 999) + AND c_long NOT IN (3, + 4, + 999); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B48_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B48_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B48_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest + WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col))), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B48_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest, + unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c)) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_subquery_with_where TEST_ID: A7_B48_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c +FROM + (SELECT * + FROM test_unnest), unnest(mv_to_array(c_mv_all_null_and_empty_val)) AS u(c) +WHERE c_long IN + (SELECT col + FROM ( + VALUES(0),(1),(2),(999)) AS t(col)) + AND c_long NOT IN + (SELECT col + FROM ( + VALUES(3),(4),(999)) AS t(col)); ++---+ +| c | ++---+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++---+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# Total query count 1681 Positive tests: 1401 Negative tests: 280 +#------------------------------------------------------------------------- diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_ops.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_ops.iq new file mode 100644 index 000000000000..def661788623 --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_ops.iq @@ -0,0 +1,331 @@ +!set useApproximateCountDistinct false +!use druidtest://?componentSupplier=StandardComponentSupplier&datasets=sql/src/test/quidem/qatests/qaUnnest/mv&numMergeBuffers=3 +!set outputformat mysql +SELECT * +FROM test_unnest; ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| __time | c_str | c_long | c_float | c_double | c_mv_complex | c_mv_num | c_mv_complex_with_null_and_empty_val | c_mv_num_with_null_and_empty_val | c_mv_complex_with_null_and_empty_row | c_mv_num_with_null_and_empty_row | c_mv_all_null_and_empty_val | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (c+c) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 4 | +| 4 | +| 5 | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c-c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (c-c)=0; ++-----+ +| col | ++-----+ +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c-c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| -1 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c*c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (c*c) IN (0, + 1, + 4, + 9); ++-----+ +| col | ++-----+ +| 1.0 | +| 1.0 | +| 1.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 9.0 | +| 9.0 | +| 9.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B3_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c*c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 1 | +| 2 | +| 2 | +| 3 | +| 4 | +| 6 | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c/c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (c/c)=1; ++-----+ +| col | ++-----+ +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A1_B4_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c/c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 3 | +| | +| | +| | +| | ++-----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A2_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c||c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (c||c) IN ('', + '11', + '22', + '33'); ++-----+ +| col | ++-----+ +| | +| | +| | +| 11 | +| 11 | +| 11 | +| 22 | +| 22 | +| 22 | +| 33 | +| 33 | +| 33 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_ops TEST_ID: A2_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (c||c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (c||c_long) IN ('0', + '10', + '20', + '30', + '1', + '11', + '21', + '31', + '2', + '12', + '22', + '32'); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 10 | +| 11 | +| 12 | +| 2 | +| 20 | +| 21 | +| 22 | +| 30 | +| 31 | +| 32 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# Total query count 11 Positive tests: 11 Negative tests: 0 +#------------------------------------------------------------------------- diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_other_funcs.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_other_funcs.iq new file mode 100644 index 000000000000..2f3b61e8c223 --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_other_funcs.iq @@ -0,0 +1,7720 @@ +!set useApproximateCountDistinct false +!use druidtest://?componentSupplier=StandardComponentSupplier&datasets=sql/src/test/quidem/qatests/qaUnnest/mv&numMergeBuffers=3 +!set outputformat mysql +SELECT * +FROM test_unnest; ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| __time | c_str | c_long | c_float | c_double | c_mv_complex | c_mv_num | c_mv_complex_with_null_and_empty_val | c_mv_num_with_null_and_empty_val | c_mv_complex_with_null_and_empty_row | c_mv_num_with_null_and_empty_row | c_mv_all_null_and_empty_val | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 15 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 5 | +| 5 | +| 5 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING count(*) IN (3, + 6); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING count(*) IN (5); ++-----+ +| col | ++-----+ +| 5 | +| 5 | +| 5 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 4 | +| 4 | +| 4 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING count(DISTINCT c) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING count(DISTINCT c) IN (3, + 4); ++-----+ +| col | ++-----+ +| 4 | +| 4 | +| 4 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING count(DISTINCT c_long) IN (3); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B2_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING count(DISTINCT c_long) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++------+ +| col | ++------+ +| 18.0 | ++------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 15 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 3.0 | +| 6.0 | +| 9.0 | +| | +| | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0 | +| 10 | +| 5 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING sum(c) IN (0, + 3, + 6, + 9); ++-----+ +| col | ++-----+ +| 3.0 | +| 6.0 | +| 9.0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING sum(c) IN (6); ++-----+ +| col | ++-----+ +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING sum(c_long) IN (3, + 6); ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B3_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sum(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING sum(c_long) IN (0, + 5, + 10); ++-----+ +| col | ++-----+ +| 0 | +| 10 | +| 5 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING min(c) IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C8 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT min(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING min(c) IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING min(c_long) IN (0); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B4_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT min(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING min(c_long) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 2 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING max(c) IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C8 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT max(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING max(c) IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING max(c_long) IN (2); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B5_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT max(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING max(c_long) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 2.0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 1.0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 3.0 | +| | +| | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0.0 | +| 1.0 | +| 2.0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING avg(c) IS NULL +OR cast(avg(c) AS char) IN ('NaN', + '1.0', + '2.0', + '3.0'); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 3.0 | +| | +| | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING avg(c) IN (2.0, + 1.2); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING avg(c_long) IN (1); ++-----+ +| col | ++-----+ +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B6_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT avg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING avg(c_long) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0.0 | +| 1.0 | +| 2.0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING approx_count_distinct(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING approx_count_distinct(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING approx_count_distinct(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B7_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING approx_count_distinct(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING approx_count_distinct_builtin(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING approx_count_distinct_builtin(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING approx_count_distinct_builtin(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B8_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT approx_count_distinct_builtin(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING approx_count_distinct_builtin(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING earliest(cast(c AS int)) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING earliest(cast(c AS int)) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING earliest(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B17_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING earliest(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING earliest(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING earliest(cast(c_long AS char), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B18_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING earliest(cast(c_long AS char), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING earliest_by(cast(c AS int), time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING earliest_by(cast(c AS int), time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING earliest_by(c_long, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B19_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING earliest_by(c_long, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING earliest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING earliest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING earliest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B20_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT earliest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING earliest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING latest(cast(c AS int)) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING latest(cast(c AS int)) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING latest(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B21_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING latest(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING latest(c, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(c, 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING latest(c, 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING latest(cast(c_long AS char), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B22_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest(cast(c_long AS char), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING latest(cast(c_long AS char), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING latest_by(cast(c AS int), time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c AS int), time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING latest_by(cast(c AS int), time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING latest_by(c_long, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B23_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c_long, time_floor(__time, 'P1D')) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING latest_by(c_long, time_floor(__time, 'P1D')) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING latest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(c, time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING latest_by(c, time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING latest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B24_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT latest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING latest_by(cast(c_long AS char), time_floor(__time, 'P1D'), 100) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2)); ++-----+ +| cnt | ++-----+ +| 1 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING any_value(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 4 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING any_value(c) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c + HAVING any_value(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 5 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B25_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT any_value(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + GROUP BY c_long + HAVING any_value(c_long) IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_long col, + count(*) cnt, + grouping(c_long) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| | 3 | 0 | +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| 3 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_long col, + count(*) cnt, + grouping(c_long) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long col, + count(*) cnt, + grouping(c_long) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 0 | 5 | 0 | +| 1 | 5 | 0 | +| 2 | 5 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING grouping(c) IS NOT NULL; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| | 3 | 0 | +| 1 | 3 | 0 | +| 2 | 3 | 0 | +| 3 | 3 | 0 | +| | 3 | 0 | ++-----+-----+----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C8 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c col, + count(*) cnt, + grouping(c) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING grouping(c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT c_long col, + count(*) cnt, + grouping(c_long) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING grouping(c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B26_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT c_long col, + count(*) cnt, + grouping(c_long) gp +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING grouping(c_long) IS NOT NULL; ++-----+-----+----+ +| col | cnt | gp | ++-----+-----+----+ +| 0 | 5 | 0 | +| 1 | 5 | 0 | +| 2 | 5 | 0 | ++-----+-----+----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----------------------------------------------------+ +| col | ++-----------------------------------------------------+ +| [null, , 1, 2, 3, null, , 1, 2, 3, null, , 1, 2, 3] | ++-----------------------------------------------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----------------------------------------------+ +| col | ++-----------------------------------------------+ +| [0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2] | ++-----------------------------------------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++--------------------+ +| col | ++--------------------+ +| [, , ] | +| [1, 1, 1] | +| [2, 2, 2] | +| [3, 3, 3] | +| [null, null, null] | ++--------------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-------------------+ +| col | ++-------------------+ +| [null, , 1, 2, 3] | +| [null, , 1, 2, 3] | +| [null, , 1, 2, 3] | ++-------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----------+ +| col | ++-----------+ +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | ++-----------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----------------+ +| col | ++-----------------+ +| [0, 0, 0, 0, 0] | +| [1, 1, 1, 1, 1] | +| [2, 2, 2, 2, 2] | ++-----------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING array_agg(c) IS NOT NULL; ++--------------------+ +| col | ++--------------------+ +| [, , ] | +| [1, 1, 1] | +| [2, 2, 2] | +| [3, 3, 3] | +| [null, null, null] | ++--------------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING array_agg(c) IS NOT NULL; ++-------------------+ +| col | ++-------------------+ +| [null, , 1, 2, 3] | +| [null, , 1, 2, 3] | +| [null, , 1, 2, 3] | ++-------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING array_agg(c_long) IS NOT NULL; ++-----------+ +| col | ++-----------+ +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | ++-----------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B27_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING array_agg(c_long) IS NOT NULL; ++-----------------+ +| col | ++-----------------+ +| [0, 0, 0, 0, 0] | +| [1, 1, 1, 1, 1] | +| [2, 2, 2, 2, 2] | ++-----------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-------------------+ +| col | ++-------------------+ +| [null, , 1, 2, 3] | ++-------------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----------+ +| col | ++-----------+ +| [0, 1, 2] | ++-----------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [3] | +| [] | +| [null] | ++--------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-------------------+ +| col | ++-------------------+ +| [null, , 1, 2, 3] | +| [null, , 1, 2, 3] | +| [null, , 1, 2, 3] | ++-------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----------+ +| col | ++-----------+ +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | ++-----------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| [0] | +| [1] | +| [2] | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING array_agg(DISTINCT c) IS NOT NULL; ++--------+ +| col | ++--------+ +| [1] | +| [2] | +| [3] | +| [] | +| [null] | ++--------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING array_agg(DISTINCT c) IS NOT NULL; ++-------------------+ +| col | ++-------------------+ +| [null, , 1, 2, 3] | +| [null, , 1, 2, 3] | +| [null, , 1, 2, 3] | ++-------------------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING array_agg(DISTINCT c_long) IS NOT NULL; ++-----------+ +| col | ++-----------+ +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | +| [0, 1, 2] | ++-----------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B28_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING array_agg(DISTINCT c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| [0] | +| [1] | +| [2] | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C6 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING array_concat_agg(c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C8 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING array_concat_agg(c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING array_concat_agg(c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B29_C10 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING array_concat_agg(c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C6 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C7 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING array_concat_agg(DISTINCT c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C8 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING array_concat_agg(DISTINCT c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C9 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING array_concat_agg(DISTINCT c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B30_C10 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat_agg(DISTINCT c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING array_concat_agg(DISTINCT c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++----------------------+ +| col | ++----------------------+ +| |1|2|3||1|2|3||1|2|3 | ++----------------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-------------------------------+ +| col | ++-------------------------------+ +| 0|0|0|0|0|1|1|1|1|1|2|2|2|2|2 | ++-------------------------------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | +| 3|3|3 | +| || | +| | ++-------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++--------+ +| col | ++--------+ +| |1|2|3 | +| |1|2|3 | +| |1|2|3 | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-------+ +| col | ++-------+ +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | ++-------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----------+ +| col | ++-----------+ +| 0|0|0|0|0 | +| 1|1|1|1|1 | +| 2|2|2|2|2 | ++-----------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING string_agg(c, '|') IS NOT NULL; ++-------+ +| col | ++-------+ +| 1|1|1 | +| 2|2|2 | +| 3|3|3 | +| || | ++-------+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING string_agg(c, '|') IS NOT NULL; ++--------+ +| col | ++--------+ +| |1|2|3 | +| |1|2|3 | +| |1|2|3 | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING string_agg(c_long, '|') IS NOT NULL; ++-------+ +| col | ++-------+ +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | ++-------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B31_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING string_agg(c_long, '|') IS NOT NULL; ++-----------+ +| col | ++-----------+ +| 0|0|0|0|0 | +| 1|1|1|1|1 | +| 2|2|2|2|2 | ++-----------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++--------+ +| col | ++--------+ +| |1|2|3 | ++--------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-------+ +| col | ++-------+ +| 0|1|2 | ++-------+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| | +| 1 | +| 2 | +| 3 | +| | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++--------+ +| col | ++--------+ +| |1|2|3 | +| |1|2|3 | +| |1|2|3 | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-------+ +| col | ++-------+ +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | ++-------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING string_agg(DISTINCT c, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| | +| 1 | +| 2 | +| 3 | ++-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING string_agg(DISTINCT c, '|') IS NOT NULL; ++--------+ +| col | ++--------+ +| |1|2|3 | +| |1|2|3 | +| |1|2|3 | ++--------+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING string_agg(DISTINCT c_long, '|') IS NOT NULL; ++-------+ +| col | ++-------+ +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | +| 0|1|2 | ++-------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B32_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_agg(DISTINCT c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING string_agg(DISTINCT c_long, '|') IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING bit_and(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | ++-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING bit_and(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING bit_and(c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B33_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_and(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING bit_and(c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | +| 3 | +| | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING bit_or(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | +| 3 | ++-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING bit_or(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING bit_or(c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B34_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_or(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING bit_or(c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 3 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | +| 3 | +| | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C6 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C7 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING bit_xor(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | +| 3 | ++-----+ +(4 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C8 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING bit_xor(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C9 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c +HAVING bit_xor(c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_agg_funcs TEST_ID: A1_B35_C10 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bit_xor(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) +GROUP BY c_long +HAVING bit_xor(c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | ++-----+ +(3 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array['1', + '2', + '3'] AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++-----------+ +| col | ++-----------+ +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | +| [1, 2, 3] | ++-----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array[c, + c, + '3'] AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array[c, + c, + '3'] IS NOT NULL; ++-----------------+ +| col | ++-----------------+ +| [, , 3] | +| [, , 3] | +| [, , 3] | +| [1, 1, 3] | +| [1, 1, 3] | +| [1, 1, 3] | +| [2, 2, 3] | +| [2, 2, 3] | +| [2, 2, 3] | +| [3, 3, 3] | +| [3, 3, 3] | +| [3, 3, 3] | +| [null, null, 3] | +| [null, null, 3] | +| [null, null, 3] | ++-----------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B1_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array[c, + cast(c_long AS char), + '3'] AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array[c, + cast(c_long AS char), + '3'] IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [, 0, 3] | +| [, 1, 3] | +| [, 2, 3] | +| [1, 0, 3] | +| [1, 1, 3] | +| [1, 2, 3] | +| [2, 0, 3] | +| [2, 1, 3] | +| [2, 2, 3] | +| [3, 0, 3] | +| [3, 1, 3] | +| [3, 2, 3] | +| [null, 0, 3] | +| [null, 1, 3] | +| [null, 2, 3] | ++--------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B1_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array[cast(c_long AS char), + c, + '3'] AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array[cast(c_long AS char), + c, + '3'] IS NOT NULL; ++--------------+ +| col | ++--------------+ +| [0, , 3] | +| [0, 1, 3] | +| [0, 2, 3] | +| [0, 3, 3] | +| [0, null, 3] | +| [1, , 3] | +| [1, 1, 3] | +| [1, 2, 3] | +| [1, 3, 3] | +| [1, null, 3] | +| [2, , 3] | +| [2, 1, 3] | +| [2, 2, 3] | +| [2, 3, 3] | +| [2, null, 3] | ++--------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B1_C5 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array[cast(c_long AS char), + cast(c_long AS char), + '3'] AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array[cast(c_long AS char), + cast(c_long AS char), + '3'] IS NOT NULL; ++-----------+ +| col | ++-----------+ +| [0, 0, 3] | +| [0, 0, 3] | +| [0, 0, 3] | +| [0, 0, 3] | +| [0, 0, 3] | +| [1, 1, 3] | +| [1, 1, 3] | +| [1, 1, 3] | +| [1, 1, 3] | +| [1, 1, 3] | +| [2, 2, 3] | +| [2, 2, 3] | +| [2, 2, 3] | +| [2, 2, 3] | +| [2, 2, 3] | ++-----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_length(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_length(c) IS NULL + OR array_length(c) IN (1)); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_length(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_length(c_long) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_offset(c, 0) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_offset(c, 0)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B3_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_offset(c_long, 0) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_offset(c_long, 0)<>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_ordinal(c, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_ordinal(c, 1)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B4_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_ordinal(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_ordinal(c_long, 1)<>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_contains(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_contains(c, '1') IS NULL + OR array_contains(c, '1') IS TRUE + OR array_contains(c, '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| true | +| true | +| true | +| | +| | +| | ++-------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B5_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_contains(c_long, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_contains(c_long, '1') IS NULL + OR array_contains(c_long, '1') IS TRUE + OR array_contains(c_long, '1') IS FALSE); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_overlap(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_overlap(c, c) IS NULL + OR array_overlap(c, c) IS TRUE + OR array_overlap(c, c) IS FALSE); ++------+ +| col | ++------+ +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| | +| | +| | ++------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B6_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_overlap(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_overlap(c, c_long) IS NULL + OR array_overlap(c, c_long) IS TRUE + OR array_overlap(c, c_long) IS FALSE); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B6_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_overlap(c_long, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_overlap(c_long, c) IS NULL + OR array_overlap(c_long, c) IS TRUE + OR array_overlap(c_long, c) IS FALSE); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B6_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_overlap(c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_overlap(c_long, c_long) IS NULL + OR array_overlap(c_long, c_long) IS TRUE + OR array_overlap(c_long, c_long) IS FALSE); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_offset_of(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_offset_of(c, '1') IS NULL + OR array_offset_of(c, '1') IN (0, + -1)); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B7_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_offset_of(c_long, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_offset_of(c_long, '1') <>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_ordinal_of(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_ordinal_of(c, '1') IS NULL + OR array_ordinal_of(c, '1') IN (1, + -1)); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B8_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_ordinal_of(c_long, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_ordinal_of(c_long, '1') <>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_prepend(c, 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_contains(array_prepend(c, 'Z'), 'Z') IS TRUE; ++-----------+ +| col | ++-----------+ +| [, Z] | +| [, Z] | +| [, Z] | +| [1, Z] | +| [1, Z] | +| [1, Z] | +| [2, Z] | +| [2, Z] | +| [2, Z] | +| [3, Z] | +| [3, Z] | +| [3, Z] | +| [null, Z] | +| [null, Z] | +| [null, Z] | ++-----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B9_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_prepend(c_long, 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_contains(array_prepend(c_long, 'Z'), 'Z') IS TRUE; ++--------+ +| col | ++--------+ +| [0, Z] | +| [0, Z] | +| [0, Z] | +| [0, Z] | +| [0, Z] | +| [1, Z] | +| [1, Z] | +| [1, Z] | +| [1, Z] | +| [1, Z] | +| [2, Z] | +| [2, Z] | +| [2, Z] | +| [2, Z] | +| [2, Z] | ++--------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_append('Z', c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_contains(array_append('Z', c), 'Z') IS TRUE; ++-----------+ +| col | ++-----------+ +| [Z, 1] | +| [Z, 1] | +| [Z, 1] | +| [Z, 2] | +| [Z, 2] | +| [Z, 2] | +| [Z, 3] | +| [Z, 3] | +| [Z, 3] | +| [Z, ] | +| [Z, ] | +| [Z, ] | +| [Z, null] | +| [Z, null] | +| [Z, null] | ++-----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B10_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_append('Z', c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_contains(array_append('Z', c_long), 'Z') IS TRUE; ++--------+ +| col | ++--------+ +| [Z, 0] | +| [Z, 0] | +| [Z, 0] | +| [Z, 0] | +| [Z, 0] | +| [Z, 1] | +| [Z, 1] | +| [Z, 1] | +| [Z, 1] | +| [Z, 1] | +| [Z, 2] | +| [Z, 2] | +| [Z, 2] | +| [Z, 2] | +| [Z, 2] | ++--------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_concat(c, c) IS NULL + OR array_concat(c, c) IS NOT NULL); ++--------+ +| col | ++--------+ +| [, ] | +| [, ] | +| [, ] | +| [1, 1] | +| [1, 1] | +| [1, 1] | +| [2, 2] | +| [2, 2] | +| [2, 2] | +| [3, 3] | +| [3, 3] | +| [3, 3] | +| | +| | +| | ++--------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B11_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_concat(c, c_long) IS NULL + OR array_concat(c, c_long) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B11_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat(c_long, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_concat(c_long, c) IS NULL + OR array_concat(c_long, c) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B11_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_concat(c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_concat(c_long, c_long) IS NULL + OR array_concat(c_long, c_long) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_slice(c, 0, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (array_slice(c, 0, 1) IS NULL + OR array_slice(c, 0, 1) IS NOT NULL); ++-----+ +| col | ++-----+ +| [1] | +| [1] | +| [1] | +| [2] | +| [2] | +| [2] | +| [3] | +| [3] | +| [3] | +| [] | +| [] | +| [] | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B12_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_slice(c_long, 0, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_slice(c_long, 0, 1)<>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_to_string(c, '|') IN ('', + '1', + '2', + '3'); ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B13_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_string(c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_to_string(c_long, '|')<>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_to_array(c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (string_to_array(c, '|') IS NULL + OR string_to_array(c, '|') IS NOT NULL); ++-----+ +| col | ++-----+ +| [1] | +| [1] | +| [1] | +| [2] | +| [2] | +| [2] | +| [3] | +| [3] | +| [3] | +| [] | +| [] | +| [] | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B14_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_to_array(c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (string_to_array(c_long, '|') IS NULL + OR string_to_array(c_long, '|') IS NOT NULL); ++-----+ +| col | ++-----+ +| [0] | +| [0] | +| [0] | +| [0] | +| [0] | +| [1] | +| [1] | +| [1] | +| [1] | +| [1] | +| [2] | +| [2] | +| [2] | +| [2] | +| [2] | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_mv(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_to_mv(c) IN ('', + '1', + '2', + '3'); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_array_funcs TEST_ID: A1_B15_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT array_to_mv(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND array_to_mv(c_long)<>'ABCD'; ++-----+ +| col | ++-----+ ++-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_only(c,array['1', '2', '3']) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_only(c,array['1', '2', '3']) IN ('', + '1', + '2', + '3'); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B1_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_only(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_only(c, c) IN ('', + '1', + '2', + '3'); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B1_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_only(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_only(c, c_long) IN ('', + '1', + '2', + '3'); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B1_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_only(c_long, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_only(c_long, c) IN ('', + '1', + '2', + '3'); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B1_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_only(c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_only(c_long, c_long) IN ('', + '1', + '2', + '3'); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_none(c,array['1', '2', '3']) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_none(c,array['1', '2', '3']) IN ('', + '1', + '2', + '3'); ++-----+ +| col | ++-----+ ++-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B2_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_none(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_none(c, c) IN ('', + '1', + '2', + '3'); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B2_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_none(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_none(c, c_long) IN ('', + '1', + '2', + '3'); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B2_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_none(c_long, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_none(c_long, c) IN ('', + '1', + '2', + '3'); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B2_C5 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_filter_none(c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_filter_none(c_long, c_long) IN ('', + '1', + '2', + '3'); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_length(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_length(c) IS NULL + OR mv_length(c) IN (1)); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B3_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_length(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_length(c_long) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_offset(c, 0) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_offset(c, 0)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B4_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_offset(c_long, 0) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_offset(c_long, 0)<>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_ordinal(c, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_ordinal(c, 1)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B5_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_ordinal(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_ordinal(c_long, 1)<>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_contains(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_contains(c, '1') IS NULL + OR mv_contains(c, '1') IS TRUE + OR mv_contains(c, '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| true | +| true | +| true | ++-------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B6_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_contains(c_long, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_contains(c_long, '1') IS NULL + OR mv_contains(c_long, '1') IS TRUE + OR mv_contains(c_long, '1') IS FALSE); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_overlap(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_overlap(c, c) IS NULL + OR mv_overlap(c, c) IS TRUE + OR mv_overlap(c, c) IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | ++-------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B7_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_overlap(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_overlap(c, c_long) IS NULL + OR mv_overlap(c, c_long) IS TRUE + OR mv_overlap(c, c_long) IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| true | +| true | ++-------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B7_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_overlap(c_long, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_overlap(c_long, c) IS NULL + OR mv_overlap(c_long, c) IS TRUE + OR mv_overlap(c_long, c) IS FALSE); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B7_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_overlap(c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_overlap(c_long, c_long) IS NULL + OR mv_overlap(c_long, c_long) IS TRUE + OR mv_overlap(c_long, c_long) IS FALSE); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_offset_of(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_offset_of(c, '1') IS NULL + OR mv_offset_of(c, '1') IN (0, + -1)); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B8_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_offset_of(c_long, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_offset_of(c_long, '1') <>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_ordinal_of(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_ordinal_of(c, '1') IS NULL + OR mv_ordinal_of(c, '1') IN (1, + -1)); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B9_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_ordinal_of(c_long, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_ordinal_of(c_long, '1') <>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_prepend(c, 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_contains(mv_prepend(c, 'Z'), 'Z') IS TRUE; ++------------+ +| col | ++------------+ +| ["","Z"] | +| ["","Z"] | +| ["","Z"] | +| ["1","Z"] | +| ["1","Z"] | +| ["1","Z"] | +| ["2","Z"] | +| ["2","Z"] | +| ["2","Z"] | +| ["3","Z"] | +| ["3","Z"] | +| ["3","Z"] | +| [null,"Z"] | +| [null,"Z"] | +| [null,"Z"] | ++------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B10_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_prepend(c_long, 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_contains(mv_prepend(c_long, 'Z'), 'Z') IS TRUE; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_append('Z', c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_contains(mv_append('Z', c), 'Z') IS TRUE; ++------------+ +| col | ++------------+ +| ["Z",""] | +| ["Z",""] | +| ["Z",""] | +| ["Z","1"] | +| ["Z","1"] | +| ["Z","1"] | +| ["Z","2"] | +| ["Z","2"] | +| ["Z","2"] | +| ["Z","3"] | +| ["Z","3"] | +| ["Z","3"] | +| ["Z",null] | +| ["Z",null] | +| ["Z",null] | ++------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B11_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_append('Z', c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_contains(mv_append('Z', c_long), 'Z') IS TRUE; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_concat(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_concat(c, c) IS NULL + OR mv_concat(c, c) IS NOT NULL); ++-----------+ +| col | ++-----------+ +| ["",""] | +| ["",""] | +| ["",""] | +| ["1","1"] | +| ["1","1"] | +| ["1","1"] | +| ["2","2"] | +| ["2","2"] | +| ["2","2"] | +| ["3","3"] | +| ["3","3"] | +| ["3","3"] | +| | +| | +| | ++-----------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B12_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_concat(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_concat(c, c_long) IS NULL + OR mv_concat(c, c_long) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B12_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_concat(c_long, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_concat(c_long, c) IS NULL + OR mv_concat(c_long, c) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B12_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_concat(c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_concat(c_long, c_long) IS NULL + OR mv_concat(c_long, c_long) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_slice(c, 0, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mv_slice(c, 0, 1) IS NULL + OR mv_slice(c, 0, 1) IS NOT NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B13_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_slice(c_long, 0, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_slice(c_long, 0, 1)<>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mv_to_string(c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_to_string(c, '|') IN ('', + '1', + '2', + '3'); ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B14_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT mv_to_string(c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mv_to_string(c_long, '|')<>'ABCD'; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_to_mv(c, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (string_to_mv(c, '|') IS NULL + OR string_to_mv(c, '|') IS NOT NULL); ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_mv_funcs TEST_ID: A1_B15_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_to_mv(c_long, '|') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (string_to_mv(c_long, '|') IS NULL + OR string_to_mv(c_long, '|') IS NOT NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT json_keys(c, '$.') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND json_keys(c, '$.') IS NULL; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT json_keys(c_long, '$.') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND json_keys(c_long, '$.') IS NULL; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT json_object(KEY 'k' value c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND json_object(KEY 'k' value c) IS NOT NULL; ++------------+ +| col | ++------------+ +| {"k":""} | +| {"k":""} | +| {"k":""} | +| {"k":"1"} | +| {"k":"1"} | +| {"k":"1"} | +| {"k":"2"} | +| {"k":"2"} | +| {"k":"2"} | +| {"k":"3"} | +| {"k":"3"} | +| {"k":"3"} | +| {"k":null} | +| {"k":null} | +| {"k":null} | ++------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT json_object(KEY 'k' value c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND json_object(KEY 'k' value c_long) IS NOT NULL; ++---------+ +| col | ++---------+ +| {"k":0} | +| {"k":0} | +| {"k":0} | +| {"k":0} | +| {"k":0} | +| {"k":1} | +| {"k":1} | +| {"k":1} | +| {"k":1} | +| {"k":1} | +| {"k":2} | +| {"k":2} | +| {"k":2} | +| {"k":2} | +| {"k":2} | ++---------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT json_paths(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND json_paths(c) IS NOT NULL; ++-----+ +| col | ++-----+ +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B3_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT json_paths(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND json_paths(c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | +| [$] | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B4_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT json_query(c, '$.') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (json_query(c, '$.') IS NULL + OR json_query(c, '$.') IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B4_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT json_query(c_long, '$.') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (json_query(c_long, '$.') IS NULL + OR json_query(c_long, '$.') IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B5_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT json_value(c, '$.') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B5_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT json_value(c_long, '$.') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (json_value(c_long, '$.') IS NULL + OR json_value(c_long, '$.') IS NOT NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B6_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT parse_json(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (parse_json(c) IS NULL + OR parse_json(c) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B6_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT parse_json(cast(c_long AS char)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (parse_json(cast(c_long AS char)) IS NULL + OR parse_json(cast(c_long AS char)) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B7_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT try_parse_json(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (try_parse_json(c) IS NULL + OR try_parse_json(c) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B7_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT try_parse_json(cast(c_long AS char)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (try_parse_json(cast(c_long AS char)) IS NULL + OR try_parse_json(cast(c_long AS char)) IS NOT NULL); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT to_json_string(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (to_json_string(c) IS NULL + OR to_json_string(c) IS NOT NULL); ++-----+ +| col | ++-----+ +| "" | +| "" | +| "" | +| "1" | +| "1" | +| "1" | +| "2" | +| "2" | +| "2" | +| "3" | +| "3" | +| "3" | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_json_funcs TEST_ID: A1_B8_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT to_json_string(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (to_json_string(c_long) IS NULL + OR to_json_string(c_long) IS NOT NULL); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# Total query count 359 Positive tests: 281 Negative tests: 78 +#------------------------------------------------------------------------- diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_scalar_funcs.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_scalar_funcs.iq new file mode 100644 index 000000000000..fb41790c5b6c --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest_mv_sql_scalar_funcs.iq @@ -0,0 +1,7220 @@ +!set useApproximateCountDistinct false +!use druidtest://?componentSupplier=StandardComponentSupplier&datasets=sql/src/test/quidem/qatests/qaUnnest/mv&numMergeBuffers=3 +!set outputformat mysql +SELECT * +FROM test_unnest; ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| __time | c_str | c_long | c_float | c_double | c_mv_complex | c_mv_num | c_mv_complex_with_null_and_empty_val | c_mv_num_with_null_and_empty_val | c_mv_complex_with_null_and_empty_row | c_mv_num_with_null_and_empty_row | c_mv_all_null_and_empty_val | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +| 2022-01-01 00:00:00.000 | | 1 | 0.1 | 0.1 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str2 | 2 | 0.2 | 0.2 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str3 | 3 | 0.3 | 0.3 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | str4 | 4 | 0.4 | 0.4 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | [null,"",null,"",null] | +| 2022-01-01 00:00:00.000 | | 0 | 0.0 | 0.0 | ["my_null","my_empty","1","[2]","[3, [4, 5]]"] | ["-1","0","1","2","3"] | [null,"","1","[2]","[3, [4, 5]]"] | [null,"","1","2","3"] | | | [null,"",null,"",null] | ++-------------------------+-------+--------+---------+----------+------------------------------------------------+------------------------+--------------------------------------+----------------------------------+--------------------------------------+----------------------------------+-----------------------------+ +(5 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT pi+pi AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND pi<>0; ++-------------------+ +| col | ++-------------------+ +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | +| 6.283185307179586 | ++-------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT pi AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND pi<>0; ++-------------------+ +| col | ++-------------------+ +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | ++-------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT abs(c)+abs(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (abs(c)+abs(c)) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT abs(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND abs(c+c) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B2_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT abs(c)+abs(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (abs(c)+abs(c_long)) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B2_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT abs(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (abs(c)+abs(c_long)) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 4 | +| 4 | +| 5 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ceil(c)+ceil(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (ceil(c)+ceil(c)) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B3_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ceil(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ceil(c+c) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B3_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ceil(c)+ceil(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (ceil(c)+ceil(c_long)) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B3_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ceil(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ceil(c+c_long) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 4 | +| 4 | +| 5 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT exp(c)+exp(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (exp(c)+exp(c))<>0; ++--------------------+ +| col | ++--------------------+ +| 14.7781121978613 | +| 14.7781121978613 | +| 14.7781121978613 | +| 40.171073846375336 | +| 40.171073846375336 | +| 40.171073846375336 | +| 5.43656365691809 | +| 5.43656365691809 | +| 5.43656365691809 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B4_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT exp(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND exp(c+c)<>0; ++--------------------+ +| col | ++--------------------+ +| 403.4287934927351 | +| 403.4287934927351 | +| 403.4287934927351 | +| 54.598150033144236 | +| 54.598150033144236 | +| 54.598150033144236 | +| 7.38905609893065 | +| 7.38905609893065 | +| 7.38905609893065 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT exp(c)+exp(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (exp(c)+exp(c_long))<>0; ++--------------------+ +| col | ++--------------------+ +| 10.107337927389695 | +| 10.107337927389695 | +| 14.7781121978613 | +| 21.085536923187668 | +| 22.803818751646713 | +| 27.47459302211832 | +| 3.718281828459045 | +| 5.43656365691809 | +| 8.38905609893065 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B4_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT exp(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND exp(c+c_long)<>0; ++--------------------+ +| col | ++--------------------+ +| 148.4131591025766 | +| 2.718281828459045 | +| 20.085536923187668 | +| 20.085536923187668 | +| 20.085536923187668 | +| 54.598150033144236 | +| 54.598150033144236 | +| 7.38905609893065 | +| 7.38905609893065 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT floor(c)+floor(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (floor(c)+floor(c)) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B5_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT floor(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND floor(c+c) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT floor(c)+floor(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (floor(c)+floor(c_long)) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B5_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT floor(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND floor(c+c_long) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 4 | +| 4 | +| 5 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ln(c)+ln(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (ln(c)+ln(c))<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.0 | +| 0.0 | +| 0.0 | +| 1.3862943611198906 | +| 1.3862943611198906 | +| 1.3862943611198906 | +| 2.1972245773362196 | +| 2.1972245773362196 | +| 2.1972245773362196 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B6_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ln(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ln(c+c)<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.6931471805599453 | +| 0.6931471805599453 | +| 0.6931471805599453 | +| 1.3862943611198906 | +| 1.3862943611198906 | +| 1.3862943611198906 | +| 1.791759469228055 | +| 1.791759469228055 | +| 1.791759469228055 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ln(c)+ln(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (ln(c)+ln(c_long))<>99999; ++--------------------+ +| col | ++--------------------+ +| -Infinity | +| -Infinity | +| -Infinity | +| 0.0 | +| 0.6931471805599453 | +| 0.6931471805599453 | +| 1.0986122886681098 | +| 1.3862943611198906 | +| 1.791759469228055 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B6_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ln(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ln(c+c_long)<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.0 | +| 0.6931471805599453 | +| 0.6931471805599453 | +| 1.0986122886681098 | +| 1.0986122886681098 | +| 1.0986122886681098 | +| 1.3862943611198906 | +| 1.3862943611198906 | +| 1.6094379124341003 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT log10(c)+log10(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (log10(c)+log10(c))<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.0 | +| 0.0 | +| 0.0 | +| 0.6020599913279624 | +| 0.6020599913279624 | +| 0.6020599913279624 | +| 0.9542425094393249 | +| 0.9542425094393249 | +| 0.9542425094393249 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B7_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT log10(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND log10(c+c)<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.3010299956639812 | +| 0.3010299956639812 | +| 0.3010299956639812 | +| 0.6020599913279624 | +| 0.6020599913279624 | +| 0.6020599913279624 | +| 0.7781512503836436 | +| 0.7781512503836436 | +| 0.7781512503836436 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B7_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT log10(c)+log10(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (log10(c)+log10(c_long))<>99999; ++---------------------+ +| col | ++---------------------+ +| -Infinity | +| -Infinity | +| -Infinity | +| 0.0 | +| 0.3010299956639812 | +| 0.3010299956639812 | +| 0.47712125471966244 | +| 0.6020599913279624 | +| 0.7781512503836436 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B7_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT log10(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND log10(c+c_long)<>99999; ++---------------------+ +| col | ++---------------------+ +| 0.0 | +| 0.3010299956639812 | +| 0.3010299956639812 | +| 0.47712125471966244 | +| 0.47712125471966244 | +| 0.47712125471966244 | +| 0.6020599913279624 | +| 0.6020599913279624 | +| 0.6989700043360189 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT power(c, 1)+power(c, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (power(c, 1)+power(c, 1)) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B8_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT power(c+c, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND power(c+c, 1) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B8_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT power(c, 1)+power(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (power(c, 1)+power(c_long, 1)) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B8_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT power(c+c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND power(c+c_long, 1) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sqrt(c)+sqrt(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (sqrt(c)+sqrt(c))<>99999; ++--------------------+ +| col | ++--------------------+ +| 2.0 | +| 2.0 | +| 2.0 | +| 2.8284271247461903 | +| 2.8284271247461903 | +| 2.8284271247461903 | +| 3.4641016151377544 | +| 3.4641016151377544 | +| 3.4641016151377544 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B9_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sqrt(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND sqrt(c+c)<>99999; ++--------------------+ +| col | ++--------------------+ +| 1.4142135623730951 | +| 1.4142135623730951 | +| 1.4142135623730951 | +| 2.0 | +| 2.0 | +| 2.0 | +| 2.449489742783178 | +| 2.449489742783178 | +| 2.449489742783178 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B9_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sqrt(c)+sqrt(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (sqrt(c)+sqrt(c_long))<>99999; ++--------------------+ +| col | ++--------------------+ +| 1.0 | +| 1.4142135623730951 | +| 1.7320508075688772 | +| 2.0 | +| 2.414213562373095 | +| 2.414213562373095 | +| 2.732050807568877 | +| 2.8284271247461903 | +| 3.1462643699419726 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B9_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sqrt(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND sqrt(c+c_long)<>99999; ++--------------------+ +| col | ++--------------------+ +| 1.0 | +| 1.4142135623730951 | +| 1.4142135623730951 | +| 1.7320508075688772 | +| 1.7320508075688772 | +| 1.7320508075688772 | +| 2.0 | +| 2.0 | +| 2.23606797749979 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT truncate(cast(c AS decimal), 1)+truncate(cast(c AS decimal), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (truncate(cast(c AS decimal), 1)+truncate(cast(c AS decimal), 1)) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B10_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT truncate(cast(c AS decimal)+cast(c AS decimal), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND truncate(cast(c AS decimal)+cast(c AS decimal), 1) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B10_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT truncate(cast(c AS decimal), 1)+truncate(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (truncate(cast(c AS decimal), 1)+truncate(c_long, 1)) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B10_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT truncate(cast(c AS decimal)+c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND truncate(cast(c AS decimal)+c_long, 1) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT trunc(cast(c AS decimal), 1)+trunc(cast(c AS decimal), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (trunc(cast(c AS decimal), 1)+trunc(cast(c AS decimal), 1)) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B11_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT trunc(cast(c AS decimal)+cast(c AS decimal), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND trunc(cast(c AS decimal)+cast(c AS decimal), 1) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT trunc(cast(c AS decimal), 1)+trunc(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (trunc(cast(c AS decimal), 1)+trunc(c_long, 1)) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B11_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT trunc(cast(c AS decimal)+c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND trunc(cast(c AS decimal)+c_long, 1) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT round(cast(c AS decimal), 1)+round(cast(c AS decimal), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (round(cast(c AS decimal), 1)+round(cast(c AS decimal), 1)) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B12_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT round(cast(c AS decimal)+cast(c AS decimal), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND round(cast(c AS decimal)+cast(c AS decimal), 1) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B12_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT round(cast(c AS decimal), 1)+round(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (round(cast(c AS decimal), 1)+round(c_long, 1)) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B12_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT round(cast(c AS decimal)+c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND round(cast(c AS decimal)+c_long, 1) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1.0 | +| 2.0 | +| 2.0 | +| 3.0 | +| 3.0 | +| 3.0 | +| 4.0 | +| 4.0 | +| 5.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mod(c, 2)+mod(c, 2) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mod(c, 2)+mod(c, 2)) IN (0, + 2); ++-----+ +| col | ++-----+ +| 0.0 | +| 0.0 | +| 0.0 | +| 2.0 | +| 2.0 | +| 2.0 | +| 2.0 | +| 2.0 | +| 2.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B13_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mod(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mod(c, c)<>99999; ++-----+ +| col | ++-----+ +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B13_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mod(c, 2)+mod(c_long, 2) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (mod(c, 2)+mod(c_long, 2)) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0.0 | +| 0.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 2.0 | +| 2.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B13_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT mod(c, c_long+1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND mod(c, c_long+1) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 0.0 | +| 1.0 | +| 1.0 | +| 1.0 | +| 2.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sin(c)+sin(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (sin(c)+sin(c))<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.2822400161197344 | +| 0.2822400161197344 | +| 0.2822400161197344 | +| 1.682941969615793 | +| 1.682941969615793 | +| 1.682941969615793 | +| 1.8185948536513634 | +| 1.8185948536513634 | +| 1.8185948536513634 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B14_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sin(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND sin(c+c)<>99999; ++----------------------+ +| col | ++----------------------+ +| -0.27941549819892586 | +| -0.27941549819892586 | +| -0.27941549819892586 | +| -0.7568024953079282 | +| -0.7568024953079282 | +| -0.7568024953079282 | +| 0.9092974268256817 | +| 0.9092974268256817 | +| 0.9092974268256817 | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B14_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sin(c)+sin(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (sin(c)+sin(c_long))<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.1411200080598672 | +| 0.8414709848078965 | +| 0.9092974268256817 | +| 0.9825909928677637 | +| 1.0504174348855488 | +| 1.682941969615793 | +| 1.7507684116335782 | +| 1.7507684116335782 | +| 1.8185948536513634 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B14_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT sin(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND sin(c+c_long)<>99999; ++---------------------+ +| col | ++---------------------+ +| -0.7568024953079282 | +| -0.7568024953079282 | +| -0.9589242746631385 | +| 0.1411200080598672 | +| 0.1411200080598672 | +| 0.1411200080598672 | +| 0.8414709848078965 | +| 0.9092974268256817 | +| 0.9092974268256817 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cos(c)+cos(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (cos(c)+cos(c))<>99999; ++---------------------+ +| col | ++---------------------+ +| -0.8322936730942848 | +| -0.8322936730942848 | +| -0.8322936730942848 | +| -1.9799849932008908 | +| -1.9799849932008908 | +| -1.9799849932008908 | +| 1.0806046117362795 | +| 1.0806046117362795 | +| 1.0806046117362795 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B15_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cos(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND cos(c+c)<>99999; ++---------------------+ +| col | ++---------------------+ +| -0.4161468365471424 | +| -0.4161468365471424 | +| -0.4161468365471424 | +| -0.6536436208636119 | +| -0.6536436208636119 | +| -0.6536436208636119 | +| 0.960170286650366 | +| 0.960170286650366 | +| 0.960170286650366 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B15_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cos(c)+cos(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (cos(c)+cos(c_long))<>99999; ++----------------------+ +| col | ++----------------------+ +| -0.44969019073230565 | +| -0.8322936730942848 | +| -1.4061393331475878 | +| 0.010007503399554585 | +| 0.12415546932099736 | +| 0.12415546932099736 | +| 0.5838531634528576 | +| 1.0806046117362795 | +| 1.5403023058681398 | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B15_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cos(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND cos(c+c_long)<>99999; ++---------------------+ +| col | ++---------------------+ +| -0.4161468365471424 | +| -0.4161468365471424 | +| -0.6536436208636119 | +| -0.6536436208636119 | +| -0.9899924966004454 | +| -0.9899924966004454 | +| -0.9899924966004454 | +| 0.28366218546322625 | +| 0.5403023058681398 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B16_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT tan(c)+tan(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (tan(c)+tan(c))<>99999; ++---------------------+ +| col | ++---------------------+ +| -0.2850930861485556 | +| -0.2850930861485556 | +| -0.2850930861485556 | +| -4.370079726523038 | +| -4.370079726523038 | +| -4.370079726523038 | +| 3.1148154493098046 | +| 3.1148154493098046 | +| 3.1148154493098046 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B16_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT tan(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND tan(c+c)<>99999; ++----------------------+ +| col | ++----------------------+ +| -0.29100619138474915 | +| -0.29100619138474915 | +| -0.29100619138474915 | +| -2.185039863261519 | +| -2.185039863261519 | +| -2.185039863261519 | +| 1.1578212823495775 | +| 1.1578212823495775 | +| 1.1578212823495775 | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B16_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT tan(c)+tan(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (tan(c)+tan(c_long))<>99999; ++---------------------+ +| col | ++---------------------+ +| -0.1425465430742778 | +| -0.6276321386066166 | +| -0.6276321386066166 | +| -2.185039863261519 | +| -2.3275864063357967 | +| -4.370079726523038 | +| 1.4148611815806245 | +| 1.5574077246549023 | +| 3.1148154493098046 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B16_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT tan(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND tan(c+c_long)<>99999; ++---------------------+ +| col | ++---------------------+ +| -0.1425465430742778 | +| -0.1425465430742778 | +| -0.1425465430742778 | +| -2.185039863261519 | +| -2.185039863261519 | +| -3.380515006246586 | +| 1.1578212823495775 | +| 1.1578212823495775 | +| 1.5574077246549023 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cot(c)+cot(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (cot(c)+cot(c))<>99999; ++---------------------+ +| col | ++---------------------+ +| -0.9153151087205715 | +| -0.9153151087205715 | +| -0.9153151087205715 | +| -14.030505102869068 | +| -14.030505102869068 | +| -14.030505102869068 | +| 1.2841852318686615 | +| 1.2841852318686615 | +| 1.2841852318686615 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B17_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cot(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND cot(c+c)<>99999; ++----------------------+ +| col | ++----------------------+ +| -0.45765755436028577 | +| -0.45765755436028577 | +| -0.45765755436028577 | +| -3.436353004180128 | +| -3.436353004180128 | +| -3.436353004180128 | +| 0.8636911544506167 | +| 0.8636911544506167 | +| 0.8636911544506167 | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cot(c)+cot(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (cot(c)+cot(c_long))<>99999; ++---------------------+ +| col | ++---------------------+ +| -0.9153151087205715 | +| -6.373159935500203 | +| -7.47291010579482 | +| 0.184435061574045 | +| 0.184435061574045 | +| 1.2841852318686615 | +| Infinity | +| Infinity | +| Infinity | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B17_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cot(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND cot(c+c_long)<>99999; ++----------------------+ +| col | ++----------------------+ +| -0.2958129155327455 | +| -0.45765755436028577 | +| -0.45765755436028577 | +| -7.015252551434534 | +| -7.015252551434534 | +| -7.015252551434534 | +| 0.6420926159343308 | +| 0.8636911544506167 | +| 0.8636911544506167 | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT asin(c)+asin(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (asin(c)+asin(c))<>99999; ++-------------------+ +| col | ++-------------------+ +| 3.141592653589793 | +| 3.141592653589793 | +| 3.141592653589793 | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | ++-------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B18_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT asin(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND asin(c+c)<>99999; ++-----+ +| col | ++-----+ +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B18_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT asin(c)+asin(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (asin(c)+asin(c_long))<>99999; ++--------------------+ +| col | ++--------------------+ +| 1.5707963267948966 | +| 3.141592653589793 | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B18_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT asin(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND asin(c+c_long)<>99999; ++--------------------+ +| col | ++--------------------+ +| 1.5707963267948966 | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT acos(c)+acos(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (acos(c)+acos(c))<>99999; ++-----+ +| col | ++-----+ +| 0.0 | +| 0.0 | +| 0.0 | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B19_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT acos(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND acos(c+c)<>99999; ++-----+ +| col | ++-----+ +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B19_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT acos(c)+acos(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (acos(c)+acos(c_long))<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.0 | +| 1.5707963267948966 | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B19_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT acos(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND acos(c+c_long)<>99999; ++-----+ +| col | ++-----+ +| 0.0 | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | +| NaN | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT atan(c)+atan(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (atan(c)+atan(c))<>99999; ++--------------------+ +| col | ++--------------------+ +| 1.5707963267948966 | +| 1.5707963267948966 | +| 1.5707963267948966 | +| 2.214297435588181 | +| 2.214297435588181 | +| 2.214297435588181 | +| 2.498091544796509 | +| 2.498091544796509 | +| 2.498091544796509 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B20_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT atan(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND atan(c+c)<>99999; ++--------------------+ +| col | ++--------------------+ +| 1.1071487177940904 | +| 1.1071487177940904 | +| 1.1071487177940904 | +| 1.3258176636680326 | +| 1.3258176636680326 | +| 1.3258176636680326 | +| 1.4056476493802699 | +| 1.4056476493802699 | +| 1.4056476493802699 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B20_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT atan(c)+atan(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (atan(c)+atan(c_long))<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.7853981633974483 | +| 1.1071487177940904 | +| 1.2490457723982544 | +| 1.5707963267948966 | +| 1.8925468811915387 | +| 1.8925468811915387 | +| 2.0344439357957027 | +| 2.214297435588181 | +| 2.356194490192345 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B20_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT atan(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND atan(c+c_long)<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.7853981633974483 | +| 1.1071487177940904 | +| 1.1071487177940904 | +| 1.2490457723982544 | +| 1.2490457723982544 | +| 1.2490457723982544 | +| 1.3258176636680326 | +| 1.3258176636680326 | +| 1.373400766945016 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT atan2(c, 1)+atan2(c, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (atan2(c, 1)+atan2(c, 1))<>99999; ++--------------------+ +| col | ++--------------------+ +| 1.5707963267948966 | +| 1.5707963267948966 | +| 1.5707963267948966 | +| 2.214297435588181 | +| 2.214297435588181 | +| 2.214297435588181 | +| 2.498091544796509 | +| 2.498091544796509 | +| 2.498091544796509 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B21_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT atan2(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND atan2(c, c)<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.7853981633974483 | +| 0.7853981633974483 | +| 0.7853981633974483 | +| 0.7853981633974483 | +| 0.7853981633974483 | +| 0.7853981633974483 | +| 0.7853981633974483 | +| 0.7853981633974483 | +| 0.7853981633974483 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B21_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT atan2(c, 1)+atan2(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (atan2(c, 1)+atan2(c_long, 1))<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.7853981633974483 | +| 1.1071487177940904 | +| 1.2490457723982544 | +| 1.5707963267948966 | +| 1.8925468811915387 | +| 1.8925468811915387 | +| 2.0344439357957027 | +| 2.214297435588181 | +| 2.356194490192345 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B21_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT atan2(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND atan2(c, c_long)<>99999; ++--------------------+ +| col | ++--------------------+ +| 0.4636476090008061 | +| 0.7853981633974483 | +| 0.7853981633974483 | +| 0.982793723247329 | +| 1.1071487177940904 | +| 1.2490457723982544 | +| 1.5707963267948966 | +| 1.5707963267948966 | +| 1.5707963267948966 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT degrees(c)+degrees(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (degrees(c)+degrees(c))<>99999; ++--------------------+ +| col | ++--------------------+ +| 114.59155902616465 | +| 114.59155902616465 | +| 114.59155902616465 | +| 229.1831180523293 | +| 229.1831180523293 | +| 229.1831180523293 | +| 343.77467707849394 | +| 343.77467707849394 | +| 343.77467707849394 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B22_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT degrees(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND degrees(c+c)<>99999; ++--------------------+ +| col | ++--------------------+ +| 114.59155902616465 | +| 114.59155902616465 | +| 114.59155902616465 | +| 229.1831180523293 | +| 229.1831180523293 | +| 229.1831180523293 | +| 343.77467707849394 | +| 343.77467707849394 | +| 343.77467707849394 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B22_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT degrees(c)+degrees(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (degrees(c)+degrees(c_long))<>99999; ++--------------------+ +| col | ++--------------------+ +| 114.59155902616465 | +| 114.59155902616465 | +| 171.88733853924697 | +| 171.88733853924697 | +| 171.88733853924697 | +| 229.1831180523293 | +| 229.1831180523293 | +| 286.4788975654116 | +| 57.29577951308232 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B22_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT degrees(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND degrees(c+c_long)<>99999; ++--------------------+ +| col | ++--------------------+ +| 114.59155902616465 | +| 114.59155902616465 | +| 171.88733853924697 | +| 171.88733853924697 | +| 171.88733853924697 | +| 229.1831180523293 | +| 229.1831180523293 | +| 286.4788975654116 | +| 57.29577951308232 | ++--------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT radians(c)+radians(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (radians(c)+radians(c))<>99999; ++---------------------+ +| col | ++---------------------+ +| 0.03490658503988659 | +| 0.03490658503988659 | +| 0.03490658503988659 | +| 0.06981317007977318 | +| 0.06981317007977318 | +| 0.06981317007977318 | +| 0.10471975511965978 | +| 0.10471975511965978 | +| 0.10471975511965978 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B23_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT radians(c+c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND radians(c+c)<>99999; ++---------------------+ +| col | ++---------------------+ +| 0.03490658503988659 | +| 0.03490658503988659 | +| 0.03490658503988659 | +| 0.06981317007977318 | +| 0.06981317007977318 | +| 0.06981317007977318 | +| 0.10471975511965978 | +| 0.10471975511965978 | +| 0.10471975511965978 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B23_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT radians(c)+radians(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (radians(c)+radians(c_long))<>99999; ++----------------------+ +| col | ++----------------------+ +| 0.017453292519943295 | +| 0.03490658503988659 | +| 0.03490658503988659 | +| 0.05235987755982989 | +| 0.05235987755982989 | +| 0.05235987755982989 | +| 0.06981317007977318 | +| 0.06981317007977318 | +| 0.08726646259971649 | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B23_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT radians(c+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND radians(c+c_long)<>99999; ++----------------------+ +| col | ++----------------------+ +| 0.017453292519943295 | +| 0.03490658503988659 | +| 0.03490658503988659 | +| 0.05235987755982989 | +| 0.05235987755982989 | +| 0.05235987755982989 | +| 0.06981317007977318 | +| 0.06981317007977318 | +| 0.08726646259971647 | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_and(cast(c AS int), 1)+bitwise_and(cast(c AS int), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_and(cast(c AS int), 1)+bitwise_and(cast(c AS int), 1)) IN (0, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B24_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_and(cast(c AS int), cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_and(cast(c AS int), cast(c AS int)) IN (0, + 1, + 2, + 3); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B24_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_and(cast(c AS int), 1)+bitwise_and(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_and(cast(c AS int), 1)+bitwise_and(c_long, 1)) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B24_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_and(cast(c AS int), c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_and(cast(c AS int), c_long) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_complement(cast(c AS int))+bitwise_complement(cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_complement(cast(c AS int))+bitwise_complement(cast(c AS int))) IN (-2, + -4, + -6, + -8); ++-----+ +| col | ++-----+ +| -4 | +| -4 | +| -4 | +| -6 | +| -6 | +| -6 | +| -8 | +| -8 | +| -8 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B25_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_complement(cast(c AS int)+cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_complement(cast(c AS int)+cast(c AS int)) IN (-1, + -3, + -5, + -7); ++-----+ +| col | ++-----+ +| -3 | +| -3 | +| -3 | +| -5 | +| -5 | +| -5 | +| -7 | +| -7 | +| -7 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B25_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_complement(cast(c AS int))+bitwise_complement(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_complement(cast(c AS int))+bitwise_complement(c_long)) IN (-2, + -3, + -4, + -5, + -6, + -7); ++-----+ +| col | ++-----+ +| -3 | +| -4 | +| -4 | +| -5 | +| -5 | +| -5 | +| -6 | +| -6 | +| -7 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B25_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_complement(cast(c AS int)+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_complement(cast(c AS int)+c_long) IN (-1, + -2, + -3, + -4, + -5, + -6); ++-----+ +| col | ++-----+ +| -2 | +| -3 | +| -3 | +| -4 | +| -4 | +| -4 | +| -5 | +| -5 | +| -6 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)))<>99999; ++----------------------+ +| col | ++----------------------+ +| -9218868437227405312 | +| -9218868437227405312 | +| -9218868437227405312 | +| -9223372036854775808 | +| -9223372036854775808 | +| -9223372036854775808 | +| 9214364837600034816 | +| 9214364837600034816 | +| 9214364837600034816 | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B26_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+cast(c AS DOUBLE)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+cast(c AS DOUBLE))<>99999; ++---------------------+ +| col | ++---------------------+ +| 4611686018427387904 | +| 4611686018427387904 | +| 4611686018427387904 | +| 4616189618054758400 | +| 4616189618054758400 | +| 4616189618054758400 | +| 4618441417868443648 | +| 4618441417868443648 | +| 4618441417868443648 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B26_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_convert_double_to_long_bits(cast(c AS DOUBLE))+bitwise_convert_double_to_long_bits(c_long))<>99999; ++----------------------+ +| col | ++----------------------+ +| -9221120237041090560 | +| -9223372036854775808 | +| 4607182418800017408 | +| 4611686018427387904 | +| 4613937818241073152 | +| 9214364837600034816 | +| 9218868437227405312 | +| 9218868437227405312 | +| 9221120237041090560 | ++----------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B26_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_convert_double_to_long_bits(cast(c AS DOUBLE)+c_long)<>99999; ++---------------------+ +| col | ++---------------------+ +| 4607182418800017408 | +| 4611686018427387904 | +| 4611686018427387904 | +| 4613937818241073152 | +| 4613937818241073152 | +| 4613937818241073152 | +| 4616189618054758400 | +| 4616189618054758400 | +| 4617315517961601024 | ++---------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT bitwise_convert_long_bits_to_double(cast(c AS int))+bitwise_convert_long_bits_to_double(cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND (bitwise_convert_long_bits_to_double(cast(c AS int))+bitwise_convert_long_bits_to_double(cast(c AS int)))<>99999); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B27_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT bitwise_convert_long_bits_to_double(cast(c AS int)+cast(c AS int)) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND bitwise_convert_long_bits_to_double(cast(c AS int)+cast(c AS int))<>99999); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B27_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT bitwise_convert_long_bits_to_double(cast(c AS int))+bitwise_convert_long_bits_to_double(c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND (bitwise_convert_long_bits_to_double(cast(c AS int))+bitwise_convert_long_bits_to_double(c_long))<>99999); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B27_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT bitwise_convert_long_bits_to_double(cast(c AS int)+c_long) AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND bitwise_convert_long_bits_to_double(cast(c AS int)+c_long)<>99999); ++-----+ +| cnt | ++-----+ +| 9 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_or(cast(c AS int), 1)+bitwise_or(cast(c AS int), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_or(cast(c AS int), 1)+bitwise_or(cast(c AS int), 1)) IN (2, + 6); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 6 | +| 6 | +| 6 | +| 6 | +| 6 | +| 6 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B28_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_or(cast(c AS int), cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_or(cast(c AS int), cast(c AS int)) IN (0, + 1, + 2, + 3); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B28_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_or(cast(c AS int), 1)+bitwise_or(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_or(cast(c AS int), 1)+bitwise_or(c_long, 1)) IN (2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 4 | +| 4 | +| 4 | +| 4 | +| 4 | +| 6 | +| 6 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B28_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_or(cast(c AS int), c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_or(cast(c AS int), c_long) IN (0, + 1, + 2, + 3); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 3 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_left(cast(c AS int), 1)+bitwise_shift_left(cast(c AS int), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_shift_left(cast(c AS int), 1)+bitwise_shift_left(cast(c AS int), 1)) IN (0, + 4, + 8, + 12); ++-----+ +| col | ++-----+ +| 12 | +| 12 | +| 12 | +| 4 | +| 4 | +| 4 | +| 8 | +| 8 | +| 8 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B29_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_left(cast(c AS int), cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_shift_left(cast(c AS int), cast(c AS int)) IN (0, + 2, + 8, + 24); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 24 | +| 24 | +| 24 | +| 8 | +| 8 | +| 8 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B29_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_left(cast(c AS int), 1)+bitwise_shift_left(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_shift_left(cast(c AS int), 1)+bitwise_shift_left(c_long, 1)) IN (0, + 2, + 4, + 6, + 8, + 10); ++-----+ +| col | ++-----+ +| 10 | +| 2 | +| 4 | +| 4 | +| 6 | +| 6 | +| 6 | +| 8 | +| 8 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B29_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_left(cast(c AS int), c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_shift_left(cast(c AS int), c_long) IN (0, + 1, + 2, + 3, + 4, + 6, + 8, + 12); ++-----+ +| col | ++-----+ +| 1 | +| 12 | +| 2 | +| 2 | +| 3 | +| 4 | +| 4 | +| 6 | +| 8 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B30_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_right(cast(c AS int), 1)+bitwise_shift_right(cast(c AS int), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_shift_right(cast(c AS int), 1)+bitwise_shift_right(cast(c AS int), 1)) IN (0, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B30_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_right(cast(c AS int), cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_shift_right(cast(c AS int), cast(c AS int)) IN (0); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B30_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_right(cast(c AS int), 1)+bitwise_shift_right(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_shift_right(cast(c AS int), 1)+bitwise_shift_right(c_long, 1)) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B30_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_shift_right(cast(c AS int), c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_shift_right(cast(c AS int), c_long) IN (0, + 1, + 2, + 3); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B31_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_xor(cast(c AS int), 1)+bitwise_xor(cast(c AS int), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_xor(cast(c AS int), 1)+bitwise_xor(cast(c AS int), 1)) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 4 | +| 4 | +| 4 | +| 6 | +| 6 | +| 6 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B31_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_xor(cast(c AS int), cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_xor(cast(c AS int), cast(c AS int)) IN (0); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B31_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_xor(cast(c AS int), 1)+bitwise_xor(c_long, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (bitwise_xor(cast(c AS int), 1)+bitwise_xor(c_long, 1)) IN (0, + 1, + 2, + 3, + 4, + 5, + 6); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 2 | +| 3 | +| 3 | +| 3 | +| 4 | +| 5 | +| 6 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B31_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT bitwise_xor(cast(c AS int), c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND bitwise_xor(cast(c AS int), c_long) IN (0, + 1, + 2, + 3); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B33_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_binary_byte_format(cast(c AS int))+human_readable_binary_byte_format(cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (human_readable_binary_byte_format(cast(c AS int))+human_readable_binary_byte_format(cast(c AS int)))<>99999; ++-----+ +| col | ++-----+ ++-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B33_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_binary_byte_format(cast(c AS int)+cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND human_readable_binary_byte_format(cast(c AS int)+cast(c AS int)) IS NOT NULL; ++-----+ +| col | ++-----+ +| 2 B | +| 2 B | +| 2 B | +| 4 B | +| 4 B | +| 4 B | +| 6 B | +| 6 B | +| 6 B | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B33_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_binary_byte_format(cast(c AS int))+human_readable_binary_byte_format(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (human_readable_binary_byte_format(cast(c AS int))+human_readable_binary_byte_format(c_long))<>99999; ++-----+ +| col | ++-----+ ++-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B33_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_binary_byte_format(cast(c AS int)+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND human_readable_binary_byte_format(c+c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 B | +| 2 B | +| 2 B | +| 3 B | +| 3 B | +| 3 B | +| 4 B | +| 4 B | +| 5 B | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B34_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_byte_format(cast(c AS int))+human_readable_decimal_byte_format(cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (human_readable_decimal_byte_format(cast(c AS int))+human_readable_decimal_byte_format(cast(c AS int)))<>99999; ++-----+ +| col | ++-----+ ++-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B34_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_byte_format(cast(c AS int)+cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND human_readable_decimal_byte_format(cast(c AS int)+cast(c AS int)) IS NOT NULL; ++-----+ +| col | ++-----+ +| 2 B | +| 2 B | +| 2 B | +| 4 B | +| 4 B | +| 4 B | +| 6 B | +| 6 B | +| 6 B | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B34_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_byte_format(cast(c AS int))+human_readable_decimal_byte_format(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (human_readable_decimal_byte_format(cast(c AS int))+human_readable_decimal_byte_format(c_long))<>99999; ++-----+ +| col | ++-----+ ++-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B34_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_byte_format(cast(c AS int)+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND human_readable_decimal_byte_format(cast(c AS int)+c_long) IS NOT NULL; ++-----+ +| col | ++-----+ +| 1 B | +| 2 B | +| 2 B | +| 3 B | +| 3 B | +| 3 B | +| 4 B | +| 4 B | +| 5 B | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B35_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_format(cast(c AS int))+human_readable_decimal_format(cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (human_readable_decimal_format(cast(c AS int))+human_readable_decimal_format(cast(c AS int))) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2.0 | +| 2.0 | +| 2.0 | +| 4.0 | +| 4.0 | +| 4.0 | +| 6.0 | +| 6.0 | +| 6.0 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B35_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_format(cast(c AS int)+cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND human_readable_decimal_format(cast(c AS int)+cast(c AS int)) IN (0, + 2, + 4, + 6); ++-----+ +| col | ++-----+ +| 2 | +| 2 | +| 2 | +| 4 | +| 4 | +| 4 | +| 6 | +| 6 | +| 6 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B35_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_format(cast(c AS int))+ceil(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND human_readable_decimal_format(cast(c AS int))+ceil(c_long) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 4 | +| 4 | +| 5 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B35_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT human_readable_decimal_format(cast(c AS int)+c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND human_readable_decimal_format(cast(c AS int)+c_long) IN (0, + 1, + 2, + 3, + 4, + 5); ++-----+ +| col | ++-----+ +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| 4 | +| 4 | +| 5 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B36_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT safe_divide(cast(c AS int), 0)+safe_divide(cast(c AS int), 0) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (safe_divide(cast(c AS int), 0)+safe_divide(cast(c AS int), 0)) IN (0); ++-----+ +| col | ++-----+ ++-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B36_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT safe_divide(cast(c AS int), cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND safe_divide(cast(c AS int), cast(c AS int)) IN (0, + 1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B36_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT safe_divide(cast(c AS int), 0)+safe_divide(c_long, 0) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (safe_divide(cast(c AS int), 0)+safe_divide(c_long, 0)) IN (0); ++-----+ +| col | ++-----+ ++-----+ +(0 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_numeric_funcs TEST_ID: A1_B36_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT safe_divide(cast(c AS int), c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND safe_divide(cast(c AS int), c_long) IN (0, + 1, + 2, + 3); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | +| 1 | +| 2 | +| 3 | ++-----+ +(6 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT concat(c, c)||concat(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (concat(c, c)||concat(c, c)) IN ('', + '1111', + '2222', + '3333'); ++------+ +| col | ++------+ +| | +| | +| | +| 1111 | +| 1111 | +| 1111 | +| 2222 | +| 2222 | +| 2222 | +| 3333 | +| 3333 | +| 3333 | ++------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT concat(c, c_long)||concat(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (concat(c, c_long)||concat(c, c_long)) IN ('00', + '1010', + '2020', + '3030', + '11', + '1111', + '2121', + '3131', + '22', + '1212', + '2222', + '3232'); ++------+ +| col | ++------+ +| 00 | +| 1010 | +| 11 | +| 1111 | +| 1212 | +| 2020 | +| 2121 | +| 22 | +| 2222 | +| 3030 | +| 3131 | +| 3232 | ++------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT textcat(c, c)||textcat(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (textcat(c, c)||textcat(c, c)) IN ('', + '1111', + '2222', + '3333'); ++------+ +| col | ++------+ +| | +| | +| | +| 1111 | +| 1111 | +| 1111 | +| 2222 | +| 2222 | +| 2222 | +| 3333 | +| 3333 | +| 3333 | ++------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT textcat(c, cast(c_long AS char))||textcat(c, cast(c_long AS char)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (textcat(c, cast(c_long AS char))||textcat(c, cast(c_long AS char))) IN ('00', + '1010', + '2020', + '3030', + '11', + '1111', + '2121', + '3131', + '22', + '1212', + '2222', + '3232'); ++------+ +| col | ++------+ +| 00 | +| 1010 | +| 11 | +| 1111 | +| 1212 | +| 2020 | +| 2121 | +| 22 | +| 2222 | +| 3030 | +| 3131 | +| 3232 | ++------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_format('%sZ', c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND string_format('%sZ', c) IN ('nullZ', + '1Z', + '2Z', + '3Z'); ++-------+ +| col | ++-------+ +| 1Z | +| 1Z | +| 1Z | +| 2Z | +| 2Z | +| 2Z | +| 3Z | +| 3Z | +| 3Z | +| nullZ | +| nullZ | +| nullZ | ++-------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B3_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT string_format('%sZ', c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND string_format('%sZ', c_long) IN ('0Z', + '1Z', + '2Z'); ++-----+ +| col | ++-----+ +| 0Z | +| 0Z | +| 0Z | +| 0Z | +| 0Z | +| 1Z | +| 1Z | +| 1Z | +| 1Z | +| 1Z | +| 2Z | +| 2Z | +| 2Z | +| 2Z | +| 2Z | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B4_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND length(c) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B4_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT length(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND length(c_long) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT char_length(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND char_length(c) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B5_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT char_length(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND char_length(c_long) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT character_length(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND character_length(c) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B6_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT character_length(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND character_length(c_long) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B7_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strlen(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND strlen(c) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B7_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strlen(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND strlen(c_long) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT lower(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND lower(c)!='ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B8_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT lower(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND lower(c_long) IN ('0', + '1', + '2'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B9_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT upper(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND upper(c)!='ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B9_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT upper(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND upper(c_long) IN ('0', + '1', + '2'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT parse_long(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND parse_long(c) IN (0, + 1, + 2, + 3); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B10_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT parse_long(cast(c_long AS char)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND parse_long(cast(c_long AS char)) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B11_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT position(c IN c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND position(c IN c) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B11_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT position(c_long IN c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND position(c_long IN c) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B11_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT position(c IN c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND position(c IN c_long) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B11_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT position(c_long IN c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND position(c_long IN c_long) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B12_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT regexp_extract(c, '.*') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND regexp_extract(c, '.*')!='ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B12_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT regexp_extract(cast(c_long AS char), '.*') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND regexp_extract(cast(c_long AS char), '.*')!='ABCD'; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B13_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT regexp_like(c, '.*') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2); ++------+ +| col | ++------+ +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| | +| | +| | ++------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B13_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT regexp_like(cast(c_long AS char), '.*') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND regexp_like(cast(c_long AS char), '.*') IS TRUE; ++------+ +| col | ++------+ +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | +| true | ++------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B14_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT contains_string(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (contains_string(c, '1') IS TRUE + OR contains_string(c, '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| true | +| true | +| true | ++-------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B14_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT contains_string(cast(c_long AS char), '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (contains_string(cast(c_long AS char), '1') IS TRUE + OR contains_string(cast(c_long AS char), '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| true | +| true | +| true | +| true | +| true | ++-------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B15_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT icontains_string(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (icontains_string(c, '1') IS TRUE + OR icontains_string(c, '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| true | +| true | +| true | ++-------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B15_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT icontains_string(cast(c_long AS char), '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (icontains_string(cast(c_long AS char), '1') IS TRUE + OR icontains_string(cast(c_long AS char), '1') IS FALSE); ++-------+ +| col | ++-------+ +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| false | +| true | +| true | +| true | +| true | +| true | ++-------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B16_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT replace(c, '1', 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND replace(c, '1', 'Z')<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| Z | +| Z | +| Z | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B16_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT replace(c_long, '1', 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND replace(c_long, '1', 'Z')<>'ABCD'; ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| Z | +| Z | +| Z | +| Z | +| Z | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B17_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strpos(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND strpos(c, c) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B17_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strpos(cast(c_long AS char), c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND strpos(cast(c_long AS char), c) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B17_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strpos(c, cast(c_long AS char)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND strpos(c, cast(c_long AS char)) IN (0, + 1); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B17_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT strpos(cast(c_long AS char), cast(c_long AS char)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND strpos(cast(c_long AS char), cast(c_long AS char)) IN (1); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B18_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT substring(c, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND substring(c, 1)<>'ABCD'; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B18_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT substring(cast(c_long AS char), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND substring(cast(c_long AS char), 1) IN ('0', + '1', + '2'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B19_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT right(c, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND right(c, 1)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B19_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT right(cast(c_long AS char), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND right(cast(c_long AS char), 1) IN ('0', + '1', + '2'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B20_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT left(c, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND left(c, 1)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B20_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT left(cast(c_long AS char), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND left(cast(c_long AS char), 1) IN ('0', + '1', + '2'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B21_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT substr(c, 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND substr(c, 1)<>'ABCD'; ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B21_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT substr(cast(c_long AS char), 1) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND substr(cast(c_long AS char), 1) IN ('0', + '1', + '2'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B22_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT trim(BOTH '1' + FROM c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND trim(BOTH '1' + FROM c)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B22_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT trim(BOTH '1' + FROM c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND trim(BOTH '1' + FROM c_long)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B23_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT btrim(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND btrim(c, '1')<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B23_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT btrim(cast(c_long AS char), '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND btrim(cast(c_long AS char), '1')<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B24_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ltrim(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ltrim(c, '1')<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B24_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT ltrim(cast(c_long AS char), '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ltrim(cast(c_long AS char), '1')<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B25_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT rtrim(c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND rtrim(c, '1')<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B25_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT rtrim(cast(c_long AS char), '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND rtrim(cast(c_long AS char), '1')<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B26_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT reverse(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND reverse(c)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B26_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT reverse(cast(c_long AS char)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND reverse(cast(c_long AS char)) IN ('0', + '1', + '2'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B27_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT repeat(c, 2) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND repeat(c, 2)<>'ABCD'; ++-----+ +| col | ++-----+ +| | +| | +| | +| 11 | +| 11 | +| 11 | +| 22 | +| 22 | +| 22 | +| 33 | +| 33 | +| 33 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B27_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT repeat(cast(c_long AS char), 2) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND repeat(cast(c_long AS char), 2) IN ('00', + '11', + '22'); ++-----+ +| col | ++-----+ +| 00 | +| 00 | +| 00 | +| 00 | +| 00 | +| 11 | +| 11 | +| 11 | +| 11 | +| 11 | +| 22 | +| 22 | +| 22 | +| 22 | +| 22 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B28_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT lpad(c, 3, 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND lpad(c, 3, 'Z')<>'ABCD'; ++-----+ +| col | ++-----+ +| ZZ1 | +| ZZ1 | +| ZZ1 | +| ZZ2 | +| ZZ2 | +| ZZ2 | +| ZZ3 | +| ZZ3 | +| ZZ3 | +| ZZZ | +| ZZZ | +| ZZZ | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B28_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT lpad(cast(c_long AS char), 3, 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND lpad(cast(c_long AS char), 3, 'Z') IN ('ZZ0', + 'ZZ1', + 'ZZ2'); ++-----+ +| col | ++-----+ +| ZZ0 | +| ZZ0 | +| ZZ0 | +| ZZ0 | +| ZZ0 | +| ZZ1 | +| ZZ1 | +| ZZ1 | +| ZZ1 | +| ZZ1 | +| ZZ2 | +| ZZ2 | +| ZZ2 | +| ZZ2 | +| ZZ2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B29_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT rpad(c, 3, 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND rpad(c, 3, 'Z')<>'ABCD'; ++-----+ +| col | ++-----+ +| 1ZZ | +| 1ZZ | +| 1ZZ | +| 2ZZ | +| 2ZZ | +| 2ZZ | +| 3ZZ | +| 3ZZ | +| 3ZZ | +| ZZZ | +| ZZZ | +| ZZZ | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_string_funcs TEST_ID: A1_B29_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT rpad(cast(c_long AS char), 3, 'Z') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND rpad(cast(c_long AS char), 3, 'Z') IN ('0ZZ', + '1ZZ', + '2ZZ'); ++-----+ +| col | ++-----+ +| 0ZZ | +| 0ZZ | +| 0ZZ | +| 0ZZ | +| 0ZZ | +| 1ZZ | +| 1ZZ | +| 1ZZ | +| 1ZZ | +| 1ZZ | +| 2ZZ | +| 2ZZ | +| 2ZZ | +| 2ZZ | +| 2ZZ | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT CURRENT_TIMESTAMP AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND CURRENT_TIMESTAMP IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 15 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT count(*) cnt +FROM + (SELECT CURRENT_DATE AS col + FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) + WHERE c_long IN (0, + 1, + 2) + AND CURRENT_DATE IS NOT NULL); ++-----+ +| cnt | ++-----+ +| 15 | ++-----+ +(1 row) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B3_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT date_trunc('year', c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND date_trunc('year', c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B3_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT date_trunc('year', c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND date_trunc('year', c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B4_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_ceil(c, 'P1D') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_ceil(c, 'P1D') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B4_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_ceil(c_long, 'P1D') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_ceil(c_long, 'P1D') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B5_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_floor(c, 'P1D') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_floor(c, 'P1D') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B5_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_floor(c_long, 'P1D') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_floor(c_long, 'P1D') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B6_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_shift(c, 'P1D') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_shift(c, 'P1D') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B6_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_shift(c_long, 'P1D') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_shift(c_long, 'P1D') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B7_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_extract(c, 'HOUR') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_extract(c, 'HOUR') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B7_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_extract(c_long, 'HOUR') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_extract(c_long, 'HOUR') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B8_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT time_parse(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_parse(c) IS NOT NULL; ++-------------------------+ +| col | ++-------------------------+ +| 0001-01-01 00:00:00.000 | +| 0001-01-01 00:00:00.000 | +| 0001-01-01 00:00:00.000 | +| 0002-01-01 00:00:00.000 | +| 0002-01-01 00:00:00.000 | +| 0002-01-01 00:00:00.000 | +| 0003-01-01 00:00:00.000 | +| 0003-01-01 00:00:00.000 | +| 0003-01-01 00:00:00.000 | ++-------------------------+ +(9 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B8_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT time_parse(cast(c_long AS char)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_parse(cast(c_long AS char)) IS NOT NULL; ++-------------------------+ +| col | ++-------------------------+ +| 0000-01-01 00:00:00.000 | +| 0000-01-01 00:00:00.000 | +| 0000-01-01 00:00:00.000 | +| 0000-01-01 00:00:00.000 | +| 0000-01-01 00:00:00.000 | +| 0001-01-01 00:00:00.000 | +| 0001-01-01 00:00:00.000 | +| 0001-01-01 00:00:00.000 | +| 0001-01-01 00:00:00.000 | +| 0001-01-01 00:00:00.000 | +| 0002-01-01 00:00:00.000 | +| 0002-01-01 00:00:00.000 | +| 0002-01-01 00:00:00.000 | +| 0002-01-01 00:00:00.000 | +| 0002-01-01 00:00:00.000 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B9_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_in_interval(c, '2001-01-01/P1D') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_in_interval(c, '2001-01-01/P1D') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B9_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT time_in_interval(c_long, '2001-01-01/P1D') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND time_in_interval(c, '2001-01-01/P1D') IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B10_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT millis_to_timestamp(cast(c AS int)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND millis_to_timestamp(cast(c AS int))<>'2000-01-01T00:00:00.000Z'; ++-------------------------+ +| col | ++-------------------------+ +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.003 | +| 1970-01-01 00:00:00.003 | +| 1970-01-01 00:00:00.003 | +| | +| | +| | ++-------------------------+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B10_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT millis_to_timestamp(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND millis_to_timestamp(c_long)<>'2000-01-01T00:00:00.000Z'; ++-------------------------+ +| col | ++-------------------------+ +| 1970-01-01 00:00:00.000 | +| 1970-01-01 00:00:00.000 | +| 1970-01-01 00:00:00.000 | +| 1970-01-01 00:00:00.000 | +| 1970-01-01 00:00:00.000 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.001 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | +| 1970-01-01 00:00:00.002 | ++-------------------------+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B11_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestamp_to_millis(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND timestamp_to_millis(c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B11_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestamp_to_millis(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND timestamp_to_millis(c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B12_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT extract(DAY + FROM c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND extract(DAY + FROM c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B12_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT extract(DAY + FROM c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND extract(DAY + FROM c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B13_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT floor(c TO DAY) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND floor(c TO DAY) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B13_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT floor(c_long TO DAY) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND floor(c_long TO DAY) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B14_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ceil(c TO DAY) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ceil(c TO DAY) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B14_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ceil(c_long TO DAY) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ceil(c_long TO DAY) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B15_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampadd(DAY, 1, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND timestampadd(DAY, 1, c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B15_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampadd(DAY, 1, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND timestampadd(DAY, 1, c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B16_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampdiff(DAY, c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND timestampdiff(DAY, c, c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B16_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampdiff(DAY, c_long, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND timestampdiff(DAY, c_long, c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B16_C3 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampdiff(DAY, c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND timestampdiff(DAY, c, c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_datetime_funcs TEST_ID: A1_B16_C4 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT timestampdiff(DAY, c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND timestampdiff(DAY, c_long, c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_reduction_funcs TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT greatest(c, c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND greatest(c, c, '1') IN ('1', + '2', + '3'); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_reduction_funcs TEST_ID: A1_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT greatest(c, c_long, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND greatest(c, c_long, '1') IN ('1', + '2', + '3'); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_reduction_funcs TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT least(c, c, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND least(c, c, '1') IN ('1'); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_reduction_funcs TEST_ID: A1_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT least(c, c_long, '1') AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND least(c, c_long, '1') IN ('0', + '1'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B1_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_match(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ip4_match(c, c) IS TRUE; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B1_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_match(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ip4_match(c, c_long) IS TRUE; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B2_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_parse(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ip4_parse(c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B2_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_parse(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ip4_parse(c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B3_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_stringify(c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ip4_stringify(c) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_ipaddr_funcs TEST_ID: A1_B3_C2 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT ip4_stringify(c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND ip4_stringify(c_long) IS NOT NULL; +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B1_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(c AS int) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (c IS NULL + OR cast(c AS int) IN (1, + 2, + 3)); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | +| | +| | +| | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B1_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT cast(c_long AS char) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND cast(c_long AS char) IN ('0', + '1', + '2'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B2_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (CASE c + WHEN '1' THEN 'V1' + ELSE 'V2' + END) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (CASE c + WHEN '1' THEN 'V1' + ELSE 'V2' + END) IN ('V1', + 'V2'); ++-----+ +| col | ++-----+ +| V1 | +| V1 | +| V1 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B2_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (CASE c_long + WHEN 1 THEN 'V1' + ELSE 'V2' + END) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (CASE c_long + WHEN 1 THEN 'V1' + ELSE 'V2' + END) IN ('V1', + 'V2'); ++-----+ +| col | ++-----+ +| V1 | +| V1 | +| V1 | +| V1 | +| V1 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B3_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (CASE + WHEN c='1' THEN 'V1' + ELSE 'V2' + END) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (CASE + WHEN c='1' THEN 'V1' + ELSE 'V2' + END) IN ('V1', + 'V2'); ++-----+ +| col | ++-----+ +| V1 | +| V1 | +| V1 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B3_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT (CASE + WHEN c_long=1 THEN 'V1' + ELSE 'V2' + END) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND (CASE + WHEN c_long=1 THEN 'V1' + ELSE 'V2' + END) IN ('V1', + 'V2'); ++-----+ +| col | ++-----+ +| V1 | +| V1 | +| V1 | +| V1 | +| V1 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | +| V2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B4_C1 TYPE: NEGATIVE TEST +#------------------------------------------------------------------------- +SELECT nullif(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND nullif(c, c) IN ('', + '1', + '2', + '3'); +QueryInterruptedException +!error + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B4_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nullif(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND nullif(c, c_long) IN ('', + '1', + '2', + '3'); ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(10 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B4_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nullif(c_long, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND cast(nullif(c_long, c) AS char) IN ('', + '0', + '1', + '2'); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(13 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B4_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nullif(c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND nullif(c_long, c_long) IS NULL; ++-----+ +| col | ++-----+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B5_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT coalesce(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND coalesce(c, c) IN ('', + '1', + '2', + '3'); ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B5_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT coalesce(c, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND coalesce(c, c_long) IN (0, + 1, + 2, + 3); ++-----+ +| col | ++-----+ +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B5_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT coalesce(c_long, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND coalesce(c_long, c) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B5_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT coalesce(c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND coalesce(c_long, c_long) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B6_C1 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nvl(c, c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND nvl(c, c) IN ('', + '1', + '2', + '3'); ++-----+ +| col | ++-----+ +| | +| | +| | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(12 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B6_C2 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nvl(c, cast(c_long AS char)) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND nvl(c, cast(c_long AS char)) IN (1, + 2, + 3); ++-----+ +| col | ++-----+ +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 3 | +| 3 | +| 3 | ++-----+ +(11 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B6_C3 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nvl(cast(c_long AS char), c) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND nvl(cast(c_long AS char), c) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# TESTCASE: test_scalar_other_funcs TEST_ID: A1_B6_C4 TYPE: POSITIVE TEST +#------------------------------------------------------------------------- +SELECT nvl(c_long, c_long) AS col +FROM test_unnest, + unnest(mv_to_array(c_mv_num_with_null_and_empty_val)) AS u(c) +WHERE c_long IN (0, + 1, + 2) + AND nvl(c_long, c_long) IN (0, + 1, + 2); ++-----+ +| col | ++-----+ +| 0 | +| 0 | +| 0 | +| 0 | +| 0 | +| 1 | +| 1 | +| 1 | +| 1 | +| 1 | +| 2 | +| 2 | +| 2 | +| 2 | +| 2 | ++-----+ +(15 rows) + +!ok + +#------------------------------------------------------------------------- +# Total query count 261 Positive tests: 228 Negative tests: 33 +#------------------------------------------------------------------------- diff --git a/server/src/main/java/org/apache/druid/indexing/overlord/SegmentPublishResult.java b/server/src/main/java/org/apache/druid/indexing/overlord/SegmentPublishResult.java index e4bc1645f710..04b745c812e5 100644 --- a/server/src/main/java/org/apache/druid/indexing/overlord/SegmentPublishResult.java +++ b/server/src/main/java/org/apache/druid/indexing/overlord/SegmentPublishResult.java @@ -22,7 +22,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.Preconditions; -import com.google.common.collect.ImmutableSet; +import org.apache.druid.java.util.common.StringUtils; import org.apache.druid.metadata.PendingSegmentRecord; import org.apache.druid.segment.SegmentUtils; import org.apache.druid.timeline.DataSegment; @@ -34,59 +34,59 @@ import java.util.Set; /** - * Result of an operation that attempts to publish segments. Indicates the set of segments actually published - * and whether or not the transaction was a success. - * - * If "success" is false then the segments set will be empty. - * - * It's possible for the segments set to be empty even if "success" is true, since the segments set only - * includes segments actually published as part of the transaction. The requested segments could have been - * published by a different transaction (e.g. in the case of replica sets) and this one would still succeed. + * Result of a segment publish operation. */ public class SegmentPublishResult { private final Set segments; private final boolean success; - @Nullable + private final boolean retryable; private final String errorMsg; - @Nullable private final List upgradedPendingSegments; public static SegmentPublishResult ok(Set segments) { - return new SegmentPublishResult(segments, true, null); + return new SegmentPublishResult(segments, true, false, null); } public static SegmentPublishResult ok(Set segments, List upgradedPendingSegments) { - return new SegmentPublishResult(segments, true, null, upgradedPendingSegments); + return new SegmentPublishResult(segments, true, false, null, upgradedPendingSegments); } - public static SegmentPublishResult fail(String errorMsg) + public static SegmentPublishResult fail(String errorMsg, Object... args) { - return new SegmentPublishResult(ImmutableSet.of(), false, errorMsg); + return new SegmentPublishResult(Set.of(), false, false, StringUtils.format(errorMsg, args), null); + } + + public static SegmentPublishResult retryableFailure(String errorMsg, Object... args) + { + return new SegmentPublishResult(Set.of(), false, true, StringUtils.format(errorMsg, args), null); } @JsonCreator private SegmentPublishResult( @JsonProperty("segments") Set segments, @JsonProperty("success") boolean success, + @JsonProperty("retryable") boolean retryable, @JsonProperty("errorMsg") @Nullable String errorMsg ) { - this(segments, success, errorMsg, null); + this(segments, success, retryable, errorMsg, null); } private SegmentPublishResult( Set segments, boolean success, - @Nullable String errorMsg, + boolean retryable, + @Nullable String errorMsg, List upgradedPendingSegments ) { this.segments = Preconditions.checkNotNull(segments, "segments"); this.success = success; this.errorMsg = errorMsg; + this.retryable = retryable; this.upgradedPendingSegments = upgradedPendingSegments; if (!success) { @@ -98,6 +98,12 @@ private SegmentPublishResult( } } + /** + * Set of segments published successfully. + * + * @return Empty set if the publish operation failed or if all the segments had + * already been published by a different transaction. + */ @JsonProperty public Set getSegments() { @@ -117,6 +123,12 @@ public String getErrorMsg() return errorMsg; } + @JsonProperty + public boolean isRetryable() + { + return retryable; + } + @Nullable public List getUpgradedPendingSegments() { @@ -134,6 +146,7 @@ public boolean equals(Object o) } SegmentPublishResult that = (SegmentPublishResult) o; return success == that.success && + retryable == that.retryable && Objects.equals(segments, that.segments) && Objects.equals(errorMsg, that.errorMsg); } @@ -141,7 +154,7 @@ public boolean equals(Object o) @Override public int hashCode() { - return Objects.hash(segments, success, errorMsg); + return Objects.hash(segments, success, errorMsg, retryable); } @Override @@ -150,6 +163,7 @@ public String toString() return "SegmentPublishResult{" + "segments=" + SegmentUtils.commaSeparatedIdentifiers(segments) + ", success=" + success + + ", retryable=" + retryable + ", errorMsg='" + errorMsg + '\'' + '}'; } diff --git a/server/src/main/java/org/apache/druid/metadata/IndexerSQLMetadataStorageCoordinator.java b/server/src/main/java/org/apache/druid/metadata/IndexerSQLMetadataStorageCoordinator.java index fcdd31d0fa6a..9a0f91d6afd6 100644 --- a/server/src/main/java/org/apache/druid/metadata/IndexerSQLMetadataStorageCoordinator.java +++ b/server/src/main/java/org/apache/druid/metadata/IndexerSQLMetadataStorageCoordinator.java @@ -91,7 +91,6 @@ import java.util.Map; import java.util.Objects; import java.util.Set; -import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Collectors; import java.util.stream.IntStream; @@ -306,33 +305,22 @@ public SegmentPublishResult commitSegmentsAndMetadata( final String dataSource = segments.iterator().next().getDataSource(); - final AtomicBoolean definitelyNotUpdated = new AtomicBoolean(false); - try { return inReadWriteDatasourceTransaction( dataSource, transaction -> { - // Set definitelyNotUpdated back to false upon retrying. - definitelyNotUpdated.set(false); - + // Try to update datasource metadata first if (startMetadata != null) { - final DataStoreMetadataUpdateResult result = updateDataSourceMetadataWithHandle( + final SegmentPublishResult result = updateDataSourceMetadataWithHandle( transaction, dataSource, startMetadata, endMetadata ); - if (result.isFailed()) { - // Metadata was definitely not updated. - transaction.setRollbackOnly(); - definitelyNotUpdated.set(true); - - if (result.canRetry()) { - throw new RetryTransactionException(result.getErrorMsg()); - } else { - throw InvalidInput.exception(result.getErrorMsg()); - } + // Do not proceed if the datasource metadata update failed + if (!result.isSuccess()) { + return result; } } @@ -347,12 +335,7 @@ public SegmentPublishResult commitSegmentsAndMetadata( ); } catch (CallbackFailedException e) { - if (definitelyNotUpdated.get()) { - return SegmentPublishResult.fail(e.getMessage()); - } else { - // Must throw exception if we are not sure if we updated or not. - throw e; - } + throw e; } } @@ -468,45 +451,19 @@ public SegmentPublishResult commitMetadataOnly( throw new IllegalArgumentException("end metadata cannot be null"); } - final AtomicBoolean definitelyNotUpdated = new AtomicBoolean(false); - try { return inReadWriteDatasourceTransaction( dataSource, - transaction -> { - // Set definitelyNotUpdated back to false upon retrying. - definitelyNotUpdated.set(false); - - final DataStoreMetadataUpdateResult result = updateDataSourceMetadataWithHandle( - transaction, - dataSource, - startMetadata, - endMetadata - ); - - if (result.isFailed()) { - // Metadata was definitely not updated. - transaction.setRollbackOnly(); - definitelyNotUpdated.set(true); - - if (result.canRetry()) { - throw new RetryTransactionException(result.getErrorMsg()); - } else { - throw new RuntimeException(result.getErrorMsg()); - } - } - - return SegmentPublishResult.ok(ImmutableSet.of()); - } + transaction -> updateDataSourceMetadataWithHandle( + transaction, + dataSource, + startMetadata, + endMetadata + ) ); } catch (CallbackFailedException e) { - if (definitelyNotUpdated.get()) { - return SegmentPublishResult.fail(e.getMessage()); - } else { - // Must throw exception if we are not sure if we updated or not. - throw e; - } + throw e; } } @@ -1126,25 +1083,18 @@ private SegmentPublishResult commitAppendSegmentsAndMetadataInTransaction( } ); - final AtomicBoolean metadataNotUpdated = new AtomicBoolean(false); try { return inReadWriteDatasourceTransaction( dataSource, transaction -> { - metadataNotUpdated.set(false); - + // Try to update datasource metadata first if (startMetadata != null) { - final DataStoreMetadataUpdateResult metadataUpdateResult + final SegmentPublishResult metadataUpdateResult = updateDataSourceMetadataWithHandle(transaction, dataSource, startMetadata, endMetadata); - if (metadataUpdateResult.isFailed()) { - transaction.setRollbackOnly(); - metadataNotUpdated.set(true); - if (metadataUpdateResult.canRetry()) { - throw new RetryTransactionException(metadataUpdateResult.getErrorMsg()); - } else { - throw new RuntimeException(metadataUpdateResult.getErrorMsg()); - } + // Abort the transaction if datasource metadata update has failed + if (!metadataUpdateResult.isSuccess()) { + return metadataUpdateResult; } } @@ -1172,12 +1122,7 @@ private SegmentPublishResult commitAppendSegmentsAndMetadataInTransaction( ); } catch (CallbackFailedException e) { - if (metadataNotUpdated.get()) { - // Return failed result if metadata was definitely not updated - return SegmentPublishResult.fail(e.getMessage()); - } else { - throw e; - } + throw e; } } @@ -2052,7 +1997,7 @@ private Map getAppendSegmentsCommittedDuringTask( * * @throws RuntimeException if state is unknown after this call */ - protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( + protected SegmentPublishResult updateDataSourceMetadataWithHandle( final SegmentMetadataTransaction transaction, final String dataSource, final DataSourceMetadata startMetadata, @@ -2104,7 +2049,7 @@ protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( // Offsets stored in startMetadata is greater than the last commited metadata. // This can happen because the previous task is still publishing its segments and can resolve once // the previous task finishes publishing. - return DataStoreMetadataUpdateResult.retryableFailure( + return SegmentPublishResult.retryableFailure( "The new start metadata state[%s] is ahead of the last committed" + " end state[%s]. Try resetting the supervisor.", startMetadata, oldCommitMetadataFromDb @@ -2113,7 +2058,7 @@ protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( if (!startMetadataMatchesExisting) { // Not in the desired start state. - return DataStoreMetadataUpdateResult.failure( + return SegmentPublishResult.fail( "Inconsistency between stored metadata state[%s] and target state[%s]. Try resetting the supervisor.", oldCommitMetadataFromDb, startMetadata ); @@ -2128,7 +2073,7 @@ protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( Hashing.sha1().hashBytes(newCommitMetadataBytes).asBytes() ); - final DataStoreMetadataUpdateResult retVal; + final SegmentPublishResult retVal; if (oldCommitMetadataBytesFromDb == null) { // SELECT -> INSERT can fail due to races; callers must be prepared to retry. final int numRows = transaction.getHandle().createStatement( @@ -2145,8 +2090,8 @@ protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( .execute(); retVal = numRows == 1 - ? DataStoreMetadataUpdateResult.SUCCESS - : DataStoreMetadataUpdateResult.retryableFailure("Failed to insert metadata for datasource[%s]", dataSource); + ? SegmentPublishResult.ok(Set.of()) + : SegmentPublishResult.retryableFailure("Failed to insert metadata for datasource[%s]", dataSource); } else { // Expecting a particular old metadata; use the SHA1 in a compare-and-swap UPDATE final int numRows = transaction.getHandle().createStatement( @@ -2165,8 +2110,8 @@ protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( .execute(); retVal = numRows == 1 - ? DataStoreMetadataUpdateResult.SUCCESS - : DataStoreMetadataUpdateResult.retryableFailure("Failed to update metadata for datasource[%s]", dataSource); + ? SegmentPublishResult.ok(Set.of()) + : SegmentPublishResult.retryableFailure("Failed to update metadata for datasource[%s]", dataSource); } if (retVal.isSuccess()) { @@ -2523,51 +2468,4 @@ private T inReadOnlyDatasourceTransaction( { return transactionFactory.inReadOnlyDatasourceTransaction(dataSource, callback); } - - public static class DataStoreMetadataUpdateResult - { - private final boolean failed; - private final boolean canRetry; - private final String errorMsg; - - public static final DataStoreMetadataUpdateResult SUCCESS = new DataStoreMetadataUpdateResult(false, false, null); - - public static DataStoreMetadataUpdateResult failure(String errorMsgFormat, Object... messageArgs) - { - return new DataStoreMetadataUpdateResult(true, false, errorMsgFormat, messageArgs); - } - - public static DataStoreMetadataUpdateResult retryableFailure(String errorMsgFormat, Object... messageArgs) - { - return new DataStoreMetadataUpdateResult(true, true, errorMsgFormat, messageArgs); - } - - DataStoreMetadataUpdateResult(boolean failed, boolean canRetry, @Nullable String errorMsg, Object... errorFormatArgs) - { - this.failed = failed; - this.canRetry = canRetry; - this.errorMsg = null == errorMsg ? null : StringUtils.format(errorMsg, errorFormatArgs); - } - - public boolean isFailed() - { - return failed; - } - - public boolean isSuccess() - { - return !failed; - } - - public boolean canRetry() - { - return canRetry; - } - - @Nullable - public String getErrorMsg() - { - return errorMsg; - } - } } diff --git a/server/src/main/java/org/apache/druid/segment/realtime/appenderator/BaseAppenderatorDriver.java b/server/src/main/java/org/apache/druid/segment/realtime/appenderator/BaseAppenderatorDriver.java index fa7d037c92cf..7ca7fd74c2db 100644 --- a/server/src/main/java/org/apache/druid/segment/realtime/appenderator/BaseAppenderatorDriver.java +++ b/server/src/main/java/org/apache/druid/segment/realtime/appenderator/BaseAppenderatorDriver.java @@ -719,7 +719,8 @@ ListenableFuture publishInBackground( e -> (e != null && e.getMessage() != null && e.getMessage().contains("Failed to update the metadata Store." + " The new start metadata is ahead of last commited end state.")), - RetryUtils.DEFAULT_MAX_TRIES + // Do not retry here since the TransactionalSegmentPublisher itself performs required retries + 1 ); } catch (Exception e) { diff --git a/server/src/main/java/org/apache/druid/segment/realtime/appenderator/TransactionalSegmentPublisher.java b/server/src/main/java/org/apache/druid/segment/realtime/appenderator/TransactionalSegmentPublisher.java index 390f423fdb5f..eb84b50399ad 100644 --- a/server/src/main/java/org/apache/druid/segment/realtime/appenderator/TransactionalSegmentPublisher.java +++ b/server/src/main/java/org/apache/druid/segment/realtime/appenderator/TransactionalSegmentPublisher.java @@ -20,6 +20,9 @@ package org.apache.druid.segment.realtime.appenderator; import org.apache.druid.indexing.overlord.SegmentPublishResult; +import org.apache.druid.java.util.common.ISE; +import org.apache.druid.java.util.common.RetryUtils; +import org.apache.druid.java.util.common.StringUtils; import org.apache.druid.segment.SegmentSchemaMapping; import org.apache.druid.timeline.DataSegment; @@ -28,8 +31,11 @@ import java.util.Set; import java.util.function.Function; -public interface TransactionalSegmentPublisher +public abstract class TransactionalSegmentPublisher { + private static final int QUIET_RETRIES = 3; + private static final int MAX_RETRIES = 5; + /** * Publish segments, along with some commit metadata, in a single transaction. * @@ -40,14 +46,19 @@ public interface TransactionalSegmentPublisher * @throws IOException if there was an I/O error when publishing * @throws RuntimeException if we cannot tell if the segments were published or not, for some other reason */ - SegmentPublishResult publishAnnotatedSegments( + public abstract SegmentPublishResult publishAnnotatedSegments( @Nullable Set segmentsToBeOverwritten, Set segmentsToPublish, @Nullable Object commitMetadata, @Nullable SegmentSchemaMapping segmentSchemaMapping ) throws IOException; - default SegmentPublishResult publishSegments( + /** + * Applies the given annotate function on the segments and tries to publish + * them. If the action fails with a retryable failure, it can be retried upto + * {@link #MAX_RETRIES} times. + */ + public final SegmentPublishResult publishSegments( @Nullable Set segmentsToBeOverwritten, Set segmentsToPublish, Function, Set> outputSegmentsAnnotateFunction, @@ -57,20 +68,58 @@ default SegmentPublishResult publishSegments( { final Function, Set> annotateFunction = outputSegmentsAnnotateFunction .andThen(SegmentPublisherHelper::annotateShardSpec); - return publishAnnotatedSegments( + final Set annotatedSegmentsToPublish = annotateFunction.apply(segmentsToPublish); + + int attemptCount = 0; + + // Retry until success or until max retries are exhausted + SegmentPublishResult result = publishAnnotatedSegments( segmentsToBeOverwritten, - annotateFunction.apply(segmentsToPublish), + annotatedSegmentsToPublish, commitMetadata, segmentSchemaMapping ); + while (!result.isSuccess() && result.isRetryable() && attemptCount++ < MAX_RETRIES) { + awaitNextRetry(result, attemptCount); + result = publishAnnotatedSegments( + segmentsToBeOverwritten, + annotatedSegmentsToPublish, + commitMetadata, + segmentSchemaMapping + ); + } + + return result; } /** * @return true if this publisher has action to take when publishing with an empty segment set. * The publisher used by the seekable stream tasks is an example where this is true. */ - default boolean supportsEmptyPublish() + public boolean supportsEmptyPublish() { return false; } + + /** + * Sleeps until the next attempt. + */ + private static void awaitNextRetry(SegmentPublishResult lastResult, int attemptCount) + { + try { + RetryUtils.awaitNextRetry( + new ISE(lastResult.getErrorMsg()), + StringUtils.format( + "Segment publish failed due to error[%s]", + lastResult.getErrorMsg() + ), + attemptCount, + MAX_RETRIES, + attemptCount <= QUIET_RETRIES + ); + } + catch (InterruptedException e) { + throw new RuntimeException(e); + } + } } diff --git a/server/src/main/java/org/apache/druid/server/JettyUtils.java b/server/src/main/java/org/apache/druid/server/JettyUtils.java index 717eb136b43a..0f503ef3b2fc 100644 --- a/server/src/main/java/org/apache/druid/server/JettyUtils.java +++ b/server/src/main/java/org/apache/druid/server/JettyUtils.java @@ -33,9 +33,13 @@ public class JettyUtils * Concatenate URI parts, in a way that is useful for proxy servlets. * * @param base base part of the uri, like http://example.com (no trailing slash) - * @param encodedPath encoded path, like you would get from HttpServletRequest's getRequestURI + * @param encodedPath encoded path, like you would get from HttpServletRequest's getRequestURI. Must start with + * a slash. * @param encodedQueryString encoded query string, like you would get from HttpServletRequest's getQueryString + * + * @return rewritten target URI, or null if the URI cannot be rewritten */ + @Nullable public static String concatenateForRewrite( final String base, final String encodedPath, @@ -44,6 +48,10 @@ public static String concatenateForRewrite( { // Query string and path are already encoded, no need for anything fancy beyond string concatenation. + if (!encodedPath.startsWith("/")) { + return null; + } + final StringBuilder url = new StringBuilder(base).append(encodedPath); if (encodedQueryString != null) { diff --git a/server/src/main/java/org/apache/druid/server/compaction/CompactionRunSimulator.java b/server/src/main/java/org/apache/druid/server/compaction/CompactionRunSimulator.java index b74735e6aa3a..646319eec3b2 100644 --- a/server/src/main/java/org/apache/druid/server/compaction/CompactionRunSimulator.java +++ b/server/src/main/java/org/apache/druid/server/compaction/CompactionRunSimulator.java @@ -135,7 +135,7 @@ public void onTaskSubmitted(ClientCompactionTaskQuery taskPayload, CompactionCan // Unlimited task slots to ensure that simulator does not skip any interval final DruidCompactionConfig configWithUnlimitedTaskSlots = compactionConfig.withClusterConfig( - new ClusterCompactionConfig(1.0, Integer.MAX_VALUE, null, null) + new ClusterCompactionConfig(1.0, Integer.MAX_VALUE, null, null, null) ); final CoordinatorRunStats stats = new CoordinatorRunStats(); diff --git a/server/src/main/java/org/apache/druid/server/coordinator/ClusterCompactionConfig.java b/server/src/main/java/org/apache/druid/server/coordinator/ClusterCompactionConfig.java index 2e0c070b1ed2..7334251da76c 100644 --- a/server/src/main/java/org/apache/druid/server/coordinator/ClusterCompactionConfig.java +++ b/server/src/main/java/org/apache/druid/server/coordinator/ClusterCompactionConfig.java @@ -21,7 +21,11 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; +import org.apache.druid.common.config.Configs; +import org.apache.druid.error.InvalidInput; +import org.apache.druid.indexer.CompactionEngine; import org.apache.druid.server.compaction.CompactionCandidateSearchPolicy; +import org.apache.druid.server.compaction.NewestSegmentFirstPolicy; import javax.annotation.Nullable; import java.util.Objects; @@ -33,51 +37,63 @@ */ public class ClusterCompactionConfig { + private static final CompactionCandidateSearchPolicy DEFAULT_COMPACTION_POLICY + = new NewestSegmentFirstPolicy(null); + private final Double compactionTaskSlotRatio; private final Integer maxCompactionTaskSlots; - private final Boolean useAutoScaleSlots; + private final Boolean useSupervisors; + private final CompactionEngine engine; private final CompactionCandidateSearchPolicy compactionPolicy; @JsonCreator public ClusterCompactionConfig( @JsonProperty("compactionTaskSlotRatio") @Nullable Double compactionTaskSlotRatio, @JsonProperty("maxCompactionTaskSlots") @Nullable Integer maxCompactionTaskSlots, - @JsonProperty("useAutoScaleSlots") @Nullable Boolean useAutoScaleSlots, - @JsonProperty("compactionPolicy") @Nullable CompactionCandidateSearchPolicy compactionPolicy + @JsonProperty("compactionPolicy") @Nullable CompactionCandidateSearchPolicy compactionPolicy, + @JsonProperty("useSupervisors") @Nullable Boolean useSupervisors, + @JsonProperty("engine") @Nullable CompactionEngine engine ) { - this.compactionTaskSlotRatio = compactionTaskSlotRatio; - this.maxCompactionTaskSlots = maxCompactionTaskSlots; - this.useAutoScaleSlots = useAutoScaleSlots; - this.compactionPolicy = compactionPolicy; + this.compactionTaskSlotRatio = Configs.valueOrDefault(compactionTaskSlotRatio, 0.1); + this.maxCompactionTaskSlots = Configs.valueOrDefault(maxCompactionTaskSlots, Integer.MAX_VALUE); + this.compactionPolicy = Configs.valueOrDefault(compactionPolicy, DEFAULT_COMPACTION_POLICY); + this.engine = Configs.valueOrDefault(engine, CompactionEngine.NATIVE); + this.useSupervisors = Configs.valueOrDefault(useSupervisors, false); + + if (!this.useSupervisors && this.engine == CompactionEngine.MSQ) { + throw InvalidInput.exception("MSQ Compaction engine can be used only with compaction supervisors."); + } } - @Nullable @JsonProperty - public Double getCompactionTaskSlotRatio() + public double getCompactionTaskSlotRatio() { return compactionTaskSlotRatio; } - @Nullable @JsonProperty - public Integer getMaxCompactionTaskSlots() + public int getMaxCompactionTaskSlots() { return maxCompactionTaskSlots; } - @Nullable @JsonProperty - public Boolean getUseAutoScaleSlots() + public CompactionCandidateSearchPolicy getCompactionPolicy() { - return useAutoScaleSlots; + return compactionPolicy; } - @Nullable @JsonProperty - public CompactionCandidateSearchPolicy getCompactionPolicy() + public boolean getUseSupervisors() { - return compactionPolicy; + return useSupervisors; + } + + @JsonProperty + public CompactionEngine getEngine() + { + return engine; } @Override @@ -92,8 +108,9 @@ public boolean equals(Object o) ClusterCompactionConfig that = (ClusterCompactionConfig) o; return Objects.equals(compactionTaskSlotRatio, that.compactionTaskSlotRatio) && Objects.equals(maxCompactionTaskSlots, that.maxCompactionTaskSlots) - && Objects.equals(useAutoScaleSlots, that.useAutoScaleSlots) - && Objects.equals(compactionPolicy, that.compactionPolicy); + && Objects.equals(compactionPolicy, that.compactionPolicy) + && Objects.equals(useSupervisors, that.useSupervisors) + && Objects.equals(engine, that.engine); } @Override @@ -102,8 +119,21 @@ public int hashCode() return Objects.hash( compactionTaskSlotRatio, maxCompactionTaskSlots, - useAutoScaleSlots, - compactionPolicy + compactionPolicy, + useSupervisors, + engine ); } + + @Override + public String toString() + { + return "ClusterCompactionConfig{" + + "compactionTaskSlotRatio=" + compactionTaskSlotRatio + + ", maxCompactionTaskSlots=" + maxCompactionTaskSlots + + ", useSupervisors=" + useSupervisors + + ", engine=" + engine + + ", compactionPolicy=" + compactionPolicy + + '}'; + } } diff --git a/server/src/main/java/org/apache/druid/server/coordinator/CompactionSupervisorConfig.java b/server/src/main/java/org/apache/druid/server/coordinator/CompactionSupervisorConfig.java deleted file mode 100644 index 2cc2f0d133f7..000000000000 --- a/server/src/main/java/org/apache/druid/server/coordinator/CompactionSupervisorConfig.java +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.druid.server.coordinator; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonProperty; -import org.apache.druid.common.config.Configs; -import org.apache.druid.indexer.CompactionEngine; - -import javax.annotation.Nullable; -import java.util.Objects; - -/** - * This config must be bound on CliOverlord to enable running compaction supervisors - * on the Overlord. When compaction supervisors are enabled, the Coordinator - * does not run auto-compact duty. - */ -public class CompactionSupervisorConfig -{ - private static final CompactionSupervisorConfig DEFAULT = new CompactionSupervisorConfig(null, null); - - @JsonProperty - private final boolean enabled; - @JsonProperty - private final CompactionEngine engine; - - public static CompactionSupervisorConfig defaultConfig() - { - return DEFAULT; - } - - @JsonCreator - public CompactionSupervisorConfig( - @JsonProperty("enabled") @Nullable Boolean enabled, - @JsonProperty("engine") @Nullable CompactionEngine engine - ) - { - this.enabled = Configs.valueOrDefault(enabled, false); - this.engine = Configs.valueOrDefault(engine, CompactionEngine.NATIVE); - } - - public boolean isEnabled() - { - return enabled; - } - - public CompactionEngine getEngine() - { - return engine; - } - - @Override - public boolean equals(Object o) - { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - CompactionSupervisorConfig that = (CompactionSupervisorConfig) o; - return enabled == that.enabled && engine == that.engine; - } - - @Override - public int hashCode() - { - return Objects.hash(enabled, engine); - } - - @Override - public String toString() - { - return "CompactionSchedulerConfig{" + - "enabled=" + enabled + - "engine=" + engine + - '}'; - } -} diff --git a/server/src/main/java/org/apache/druid/server/coordinator/DruidCompactionConfig.java b/server/src/main/java/org/apache/druid/server/coordinator/DruidCompactionConfig.java index 96338f5b2ef6..d9298c6ab637 100644 --- a/server/src/main/java/org/apache/druid/server/coordinator/DruidCompactionConfig.java +++ b/server/src/main/java/org/apache/druid/server/coordinator/DruidCompactionConfig.java @@ -23,8 +23,8 @@ import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.Optional; import org.apache.druid.common.config.Configs; +import org.apache.druid.indexer.CompactionEngine; import org.apache.druid.server.compaction.CompactionCandidateSearchPolicy; -import org.apache.druid.server.compaction.NewestSegmentFirstPolicy; import javax.annotation.Nullable; import java.util.ArrayList; @@ -39,41 +39,32 @@ public class DruidCompactionConfig { public static final String CONFIG_KEY = "coordinator.compaction.config"; - private static final CompactionCandidateSearchPolicy DEFAULT_COMPACTION_POLICY - = new NewestSegmentFirstPolicy(null); private static final DruidCompactionConfig EMPTY_INSTANCE - = new DruidCompactionConfig(Collections.emptyList(), null, null, null, null); + = new DruidCompactionConfig(List.of(), null, null, null, null, null); private final List compactionConfigs; - private final double compactionTaskSlotRatio; - private final int maxCompactionTaskSlots; - private final boolean useAutoScaleSlots; - private final CompactionCandidateSearchPolicy compactionPolicy; + private final ClusterCompactionConfig clusterConfig; + /** + * Creates a copy of this {@link DruidCompactionConfig} with the given + * datasource compaction configs. + */ public DruidCompactionConfig withDatasourceConfigs( List compactionConfigs ) { - return new DruidCompactionConfig( - compactionConfigs, - compactionTaskSlotRatio, - maxCompactionTaskSlots, - useAutoScaleSlots, - compactionPolicy - ); + return new DruidCompactionConfig(compactionConfigs, clusterConfig); } + /** + * Creates a copy of this {@link DruidCompactionConfig} by updating the + * fields provided in the {@link ClusterCompactionConfig}. + */ public DruidCompactionConfig withClusterConfig( - ClusterCompactionConfig update + ClusterCompactionConfig clusterConfig ) { - return new DruidCompactionConfig( - this.compactionConfigs, - Configs.valueOrDefault(update.getCompactionTaskSlotRatio(), compactionTaskSlotRatio), - Configs.valueOrDefault(update.getMaxCompactionTaskSlots(), maxCompactionTaskSlots), - Configs.valueOrDefault(update.getUseAutoScaleSlots(), useAutoScaleSlots), - Configs.valueOrDefault(update.getCompactionPolicy(), compactionPolicy) - ); + return new DruidCompactionConfig(compactionConfigs, clusterConfig); } public DruidCompactionConfig withDatasourceConfig(DataSourceCompactionConfig dataSourceConfig) @@ -93,15 +84,30 @@ public DruidCompactionConfig( @JsonProperty("compactionConfigs") List compactionConfigs, @JsonProperty("compactionTaskSlotRatio") @Nullable Double compactionTaskSlotRatio, @JsonProperty("maxCompactionTaskSlots") @Nullable Integer maxCompactionTaskSlots, - @JsonProperty("useAutoScaleSlots") @Nullable Boolean useAutoScaleSlots, - @JsonProperty("compactionPolicy") @Nullable CompactionCandidateSearchPolicy compactionPolicy + @JsonProperty("compactionPolicy") @Nullable CompactionCandidateSearchPolicy compactionPolicy, + @JsonProperty("useSupervisors") @Nullable Boolean useSupervisors, + @JsonProperty("engine") @Nullable CompactionEngine engine + ) + { + this( + compactionConfigs, + new ClusterCompactionConfig( + compactionTaskSlotRatio, + maxCompactionTaskSlots, + compactionPolicy, + useSupervisors, + engine + ) + ); + } + + private DruidCompactionConfig( + @Nullable List compactionConfigs, + @Nullable ClusterCompactionConfig clusterConfig ) { this.compactionConfigs = Configs.valueOrDefault(compactionConfigs, Collections.emptyList()); - this.compactionTaskSlotRatio = Configs.valueOrDefault(compactionTaskSlotRatio, 0.1); - this.maxCompactionTaskSlots = Configs.valueOrDefault(maxCompactionTaskSlots, Integer.MAX_VALUE); - this.useAutoScaleSlots = Configs.valueOrDefault(useAutoScaleSlots, false); - this.compactionPolicy = Configs.valueOrDefault(compactionPolicy, DEFAULT_COMPACTION_POLICY); + this.clusterConfig = clusterConfig; } @JsonProperty @@ -113,31 +119,33 @@ public List getCompactionConfigs() @JsonProperty public double getCompactionTaskSlotRatio() { - return compactionTaskSlotRatio; + return clusterConfig.getCompactionTaskSlotRatio(); } @JsonProperty public int getMaxCompactionTaskSlots() { - return maxCompactionTaskSlots; + return clusterConfig.getMaxCompactionTaskSlots(); } @JsonProperty - public boolean isUseAutoScaleSlots() + public boolean isUseSupervisors() { - return useAutoScaleSlots; + return clusterConfig.getUseSupervisors(); } + @JsonProperty + public CompactionEngine getEngine() + { + return clusterConfig.getEngine(); + } - // Null-safe getters not used for serialization + /** + * Returns the cluster-level compaction config. Not used for serialization. + */ public ClusterCompactionConfig clusterConfig() { - return new ClusterCompactionConfig( - compactionTaskSlotRatio, - maxCompactionTaskSlots, - useAutoScaleSlots, - compactionPolicy - ); + return clusterConfig; } public Map dataSourceToCompactionConfigMap() @@ -160,7 +168,7 @@ public Optional findConfigForDatasource(String dataS @JsonProperty public CompactionCandidateSearchPolicy getCompactionPolicy() { - return compactionPolicy; + return clusterConfig.getCompactionPolicy(); } @Override @@ -173,23 +181,14 @@ public boolean equals(Object o) return false; } DruidCompactionConfig that = (DruidCompactionConfig) o; - return Double.compare(that.compactionTaskSlotRatio, compactionTaskSlotRatio) == 0 && - maxCompactionTaskSlots == that.maxCompactionTaskSlots && - useAutoScaleSlots == that.useAutoScaleSlots && - Objects.equals(compactionPolicy, that.compactionPolicy) && + return Objects.equals(clusterConfig, that.clusterConfig) && Objects.equals(compactionConfigs, that.compactionConfigs); } @Override public int hashCode() { - return Objects.hash( - compactionConfigs, - compactionTaskSlotRatio, - maxCompactionTaskSlots, - useAutoScaleSlots, - compactionPolicy - ); + return Objects.hash(clusterConfig, compactionConfigs); } @Override @@ -197,10 +196,7 @@ public String toString() { return "CoordinatorCompactionConfig{" + "compactionConfigs=" + compactionConfigs + - ", compactionTaskSlotRatio=" + compactionTaskSlotRatio + - ", maxCompactionTaskSlots=" + maxCompactionTaskSlots + - ", useAutoScaleSlots=" + useAutoScaleSlots + - ", compactionPolicy=" + compactionPolicy + + ", clusterConfig=" + clusterConfig + '}'; } } diff --git a/server/src/main/java/org/apache/druid/server/http/CoordinatorCompactionConfigsResource.java b/server/src/main/java/org/apache/druid/server/http/CoordinatorCompactionConfigsResource.java index 5215f7de4e26..f2cad3b455b2 100644 --- a/server/src/main/java/org/apache/druid/server/http/CoordinatorCompactionConfigsResource.java +++ b/server/src/main/java/org/apache/druid/server/http/CoordinatorCompactionConfigsResource.java @@ -112,7 +112,6 @@ public Response updateClusterCompactionConfig( public Response setCompactionTaskLimit( @QueryParam("ratio") Double compactionTaskSlotRatio, @QueryParam("max") Integer maxCompactionTaskSlots, - @QueryParam("useAutoScaleSlots") Boolean useAutoScaleSlots, @Context HttpServletRequest req ) { @@ -120,7 +119,8 @@ public Response setCompactionTaskLimit( new ClusterCompactionConfig( compactionTaskSlotRatio, maxCompactionTaskSlots, - useAutoScaleSlots, + null, + null, null ), req diff --git a/server/src/test/java/org/apache/druid/metadata/IndexerSQLMetadataStorageCoordinatorTest.java b/server/src/test/java/org/apache/druid/metadata/IndexerSQLMetadataStorageCoordinatorTest.java index 9a63c2d781c7..0212c8f2d998 100644 --- a/server/src/test/java/org/apache/druid/metadata/IndexerSQLMetadataStorageCoordinatorTest.java +++ b/server/src/test/java/org/apache/druid/metadata/IndexerSQLMetadataStorageCoordinatorTest.java @@ -24,7 +24,6 @@ import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; import org.apache.druid.data.input.StringTuple; -import org.apache.druid.error.InvalidInput; import org.apache.druid.indexing.overlord.DataSourceMetadata; import org.apache.druid.indexing.overlord.ObjectMetadata; import org.apache.druid.indexing.overlord.SegmentCreateRequest; @@ -186,7 +185,7 @@ public int getMaxRetries() ) { @Override - protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( + protected SegmentPublishResult updateDataSourceMetadataWithHandle( SegmentMetadataTransaction transaction, String dataSource, DataSourceMetadata startMetadata, @@ -780,7 +779,7 @@ public void testTransactionalAnnounceRetryAndSuccess() throws IOException ) { @Override - protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( + protected SegmentPublishResult updateDataSourceMetadataWithHandle( SegmentMetadataTransaction transaction, String dataSource, DataSourceMetadata startMetadata, @@ -789,7 +788,7 @@ protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( { metadataUpdateCounter.getAndIncrement(); if (attemptCounter.getAndIncrement() == 0) { - return DataStoreMetadataUpdateResult.retryableFailure(null); + return SegmentPublishResult.retryableFailure("this failure can be retried"); } else { return super.updateDataSourceMetadataWithHandle(transaction, dataSource, startMetadata, endMetadata); } @@ -803,7 +802,15 @@ protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( new ObjectMetadata(ImmutableMap.of("foo", "bar")), new SegmentSchemaMapping(CentralizedDatasourceSchemaConfig.SCHEMA_VERSION) ); - Assert.assertEquals(SegmentPublishResult.ok(ImmutableSet.of(defaultSegment)), result1); + Assert.assertEquals(SegmentPublishResult.retryableFailure("this failure can be retried"), result1); + + final SegmentPublishResult resultOnRetry = failOnceCoordinator.commitSegmentsAndMetadata( + ImmutableSet.of(defaultSegment), + new ObjectMetadata(null), + new ObjectMetadata(ImmutableMap.of("foo", "bar")), + new SegmentSchemaMapping(CentralizedDatasourceSchemaConfig.SCHEMA_VERSION) + ); + Assert.assertEquals(SegmentPublishResult.ok(ImmutableSet.of(defaultSegment)), resultOnRetry); Assert.assertArrayEquals( mapper.writeValueAsString(defaultSegment).getBytes(StandardCharsets.UTF_8), @@ -825,7 +832,15 @@ protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( new ObjectMetadata(ImmutableMap.of("foo", "baz")), new SegmentSchemaMapping(CentralizedDatasourceSchemaConfig.SCHEMA_VERSION) ); - Assert.assertEquals(SegmentPublishResult.ok(ImmutableSet.of(defaultSegment2)), result2); + Assert.assertEquals(SegmentPublishResult.retryableFailure("this failure can be retried"), result2); + + final SegmentPublishResult resultOnRetry2 = failOnceCoordinator.commitSegmentsAndMetadata( + ImmutableSet.of(defaultSegment2), + new ObjectMetadata(ImmutableMap.of("foo", "bar")), + new ObjectMetadata(ImmutableMap.of("foo", "baz")), + new SegmentSchemaMapping(CentralizedDatasourceSchemaConfig.SCHEMA_VERSION) + ); + Assert.assertEquals(SegmentPublishResult.ok(ImmutableSet.of(defaultSegment2)), resultOnRetry2); Assert.assertArrayEquals( mapper.writeValueAsString(defaultSegment2).getBytes(StandardCharsets.UTF_8), @@ -857,16 +872,15 @@ public void testTransactionalAnnounceFailDbNullWantNotNull() new SegmentSchemaMapping(CentralizedDatasourceSchemaConfig.SCHEMA_VERSION) ); Assert.assertEquals( - SegmentPublishResult.fail( - new RetryTransactionException( - "The new start metadata state[ObjectMetadata{theObject={foo=bar}}] is ahead of the last committed" - + " end state[null]. Try resetting the supervisor." - ).toString()), + SegmentPublishResult.retryableFailure( + "The new start metadata state[ObjectMetadata{theObject={foo=bar}}] is ahead of the last committed" + + " end state[null]. Try resetting the supervisor." + ), result1 ); - // Should be retried. - Assert.assertEquals(2, metadataUpdateCounter.get()); + // Should only be tried once. + Assert.assertEquals(1, metadataUpdateCounter.get()); } @Test @@ -888,10 +902,8 @@ public void testTransactionalAnnounceFailDbNotNullWantNull() ); Assert.assertEquals( SegmentPublishResult.fail( - InvalidInput.exception( - "Inconsistency between stored metadata state[ObjectMetadata{theObject={foo=baz}}]" - + " and target state[ObjectMetadata{theObject=null}]. Try resetting the supervisor." - ).toString() + "Inconsistency between stored metadata state[ObjectMetadata{theObject={foo=baz}}]" + + " and target state[ObjectMetadata{theObject=null}]. Try resetting the supervisor." ), result2 ); @@ -972,10 +984,9 @@ public void testTransactionalAnnounceFailDbNotNullWantDifferent() ); Assert.assertEquals( SegmentPublishResult.fail( - InvalidInput.exception( - "Inconsistency between stored metadata state[ObjectMetadata{theObject={foo=baz}}] and " - + "target state[ObjectMetadata{theObject={foo=qux}}]. Try resetting the supervisor." - ).toString()), + "Inconsistency between stored metadata state[ObjectMetadata{theObject={foo=baz}}] and " + + "target state[ObjectMetadata{theObject={foo=qux}}]. Try resetting the supervisor." + ), result2 ); diff --git a/server/src/test/java/org/apache/druid/metadata/IndexerSqlMetadataStorageCoordinatorSchemaPersistenceTest.java b/server/src/test/java/org/apache/druid/metadata/IndexerSqlMetadataStorageCoordinatorSchemaPersistenceTest.java index 9bed46b2c3a9..c72e1a75afee 100644 --- a/server/src/test/java/org/apache/druid/metadata/IndexerSqlMetadataStorageCoordinatorSchemaPersistenceTest.java +++ b/server/src/test/java/org/apache/druid/metadata/IndexerSqlMetadataStorageCoordinatorSchemaPersistenceTest.java @@ -108,7 +108,7 @@ public void setUp() ) { @Override - protected DataStoreMetadataUpdateResult updateDataSourceMetadataWithHandle( + protected SegmentPublishResult updateDataSourceMetadataWithHandle( SegmentMetadataTransaction transaction, String dataSource, DataSourceMetadata startMetadata, diff --git a/server/src/test/java/org/apache/druid/segment/realtime/appenderator/BatchAppenderatorDriverTest.java b/server/src/test/java/org/apache/druid/segment/realtime/appenderator/BatchAppenderatorDriverTest.java index 085958c5f9fb..a071ff7af7d5 100644 --- a/server/src/test/java/org/apache/druid/segment/realtime/appenderator/BatchAppenderatorDriverTest.java +++ b/server/src/test/java/org/apache/druid/segment/realtime/appenderator/BatchAppenderatorDriverTest.java @@ -29,9 +29,11 @@ import org.apache.druid.java.util.common.Intervals; import org.apache.druid.java.util.common.granularity.Granularities; import org.apache.druid.java.util.common.granularity.Granularity; +import org.apache.druid.segment.SegmentSchemaMapping; import org.apache.druid.segment.loading.DataSegmentKiller; import org.apache.druid.segment.realtime.appenderator.BaseAppenderatorDriver.SegmentsForSequence; import org.apache.druid.segment.realtime.appenderator.SegmentWithState.SegmentState; +import org.apache.druid.timeline.DataSegment; import org.apache.druid.timeline.partition.NumberedShardSpec; import org.easymock.EasyMock; import org.easymock.EasyMockSupport; @@ -41,11 +43,13 @@ import org.junit.Before; import org.junit.Test; +import javax.annotation.Nullable; import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; import java.util.function.Function; @@ -199,7 +203,19 @@ private void checkSegmentStates(int expectedNumSegmentsInState, SegmentState exp static TransactionalSegmentPublisher makeOkPublisher() { - return (segmentsToBeOverwritten, segmentsToPublish, commitMetadata, schema) -> SegmentPublishResult.ok(ImmutableSet.of()); + return new TransactionalSegmentPublisher() + { + @Override + public SegmentPublishResult publishAnnotatedSegments( + @Nullable Set segmentsToBeOverwritten, + Set segmentsToPublish, + @Nullable Object commitMetadata, + @Nullable SegmentSchemaMapping segmentSchemaMapping + ) + { + return SegmentPublishResult.ok(Set.of()); + } + }; } static class TestSegmentAllocator implements SegmentAllocator diff --git a/server/src/test/java/org/apache/druid/segment/realtime/appenderator/StreamAppenderatorDriverTest.java b/server/src/test/java/org/apache/druid/segment/realtime/appenderator/StreamAppenderatorDriverTest.java index 27aadaee574f..4bf3a8dc22b0 100644 --- a/server/src/test/java/org/apache/druid/segment/realtime/appenderator/StreamAppenderatorDriverTest.java +++ b/server/src/test/java/org/apache/druid/segment/realtime/appenderator/StreamAppenderatorDriverTest.java @@ -37,6 +37,7 @@ import org.apache.druid.java.util.common.granularity.Granularities; import org.apache.druid.java.util.common.granularity.Granularity; import org.apache.druid.query.SegmentDescriptor; +import org.apache.druid.segment.SegmentSchemaMapping; import org.apache.druid.segment.handoff.SegmentHandoffNotifier; import org.apache.druid.segment.handoff.SegmentHandoffNotifierFactory; import org.apache.druid.segment.loading.DataSegmentKiller; @@ -54,9 +55,9 @@ import org.junit.Test; import org.junit.rules.TemporaryFolder; +import javax.annotation.Nullable; import java.io.IOException; import java.util.Arrays; -import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.List; @@ -68,6 +69,7 @@ import java.util.concurrent.TimeoutException; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicReference; +import java.util.function.Function; public class StreamAppenderatorDriverTest extends EasyMockSupport { @@ -411,13 +413,14 @@ private Set asIdentifiers(Iterable segments static TransactionalSegmentPublisher makeOkPublisher() { - return (segmentsToBeOverwritten, segmentsToPublish, commitMetadata, segmentSchemaMapping) -> - SegmentPublishResult.ok(Collections.emptySet()); + return makePublisher( + (segmentsToPublish) -> SegmentPublishResult.ok(Set.of()) + ); } private TransactionalSegmentPublisher makeUpgradingPublisher() { - return (segmentsToBeOverwritten, segmentsToPublish, commitMetadata, segmentSchemaMapping) -> { + return makePublisher((segmentsToPublish) -> { Set allSegments = new HashSet<>(segmentsToPublish); int id = 0; for (DataSegment segment : segmentsToPublish) { @@ -435,17 +438,36 @@ private TransactionalSegmentPublisher makeUpgradingPublisher() allSegments.add(upgradedSegment); } return SegmentPublishResult.ok(allSegments); - }; + }); } static TransactionalSegmentPublisher makeFailingPublisher(boolean failWithException) { - return (segmentsToBeOverwritten, segmentsToPublish, commitMetadata, segmentSchemaMapping) -> { + return makePublisher((segmentsToPublish) -> { final RuntimeException exception = new RuntimeException("test"); if (failWithException) { throw exception; } return SegmentPublishResult.fail(exception.getMessage()); + }); + } + + private static TransactionalSegmentPublisher makePublisher( + Function, SegmentPublishResult> publishFunction + ) + { + return new TransactionalSegmentPublisher() + { + @Override + public SegmentPublishResult publishAnnotatedSegments( + @Nullable Set segmentsToBeOverwritten, + Set segmentsToPublish, + @Nullable Object commitMetadata, + @Nullable SegmentSchemaMapping segmentSchemaMapping + ) + { + return publishFunction.apply(segmentsToPublish); + } }; } diff --git a/server/src/test/java/org/apache/druid/segment/realtime/appenderator/TransactionalSegmentPublisherTest.java b/server/src/test/java/org/apache/druid/segment/realtime/appenderator/TransactionalSegmentPublisherTest.java new file mode 100644 index 000000000000..884b475893d1 --- /dev/null +++ b/server/src/test/java/org/apache/druid/segment/realtime/appenderator/TransactionalSegmentPublisherTest.java @@ -0,0 +1,104 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.druid.segment.realtime.appenderator; + +import org.apache.druid.indexing.overlord.SegmentPublishResult; +import org.apache.druid.segment.SegmentSchemaMapping; +import org.apache.druid.timeline.DataSegment; +import org.junit.Assert; +import org.junit.Test; + +import javax.annotation.Nullable; +import java.io.IOException; +import java.util.Set; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.function.Function; + +public class TransactionalSegmentPublisherTest +{ + @Test(timeout = 60_000L) + public void testPublishSegments_retriesUpto5Times_ifFailureIsRetryable() throws IOException + { + final AtomicInteger attemptCount = new AtomicInteger(0); + final TransactionalSegmentPublisher publisher = createPublisher( + SegmentPublishResult.retryableFailure("this error is retryable"), + attemptCount + ); + + Assert.assertEquals( + SegmentPublishResult.retryableFailure("this error is retryable"), + publisher.publishSegments(null, Set.of(), Function.identity(), null, null) + ); + Assert.assertEquals(6, attemptCount.get()); + } + + @Test + public void testPublishSegments_doesNotRetry_ifFailureIsNotRetryable() throws IOException + { + final AtomicInteger attemptCount = new AtomicInteger(0); + final TransactionalSegmentPublisher publisher = createPublisher( + SegmentPublishResult.fail("this error is not retryable"), + attemptCount + ); + + Assert.assertEquals( + SegmentPublishResult.fail("this error is not retryable"), + publisher.publishSegments(null, Set.of(), Function.identity(), null, null) + ); + Assert.assertEquals(1, attemptCount.get()); + } + + @Test + public void testPublishAnnotatedSegments_doesNotRetry() throws Exception + { + final AtomicInteger attemptCount = new AtomicInteger(0); + final TransactionalSegmentPublisher publisher = createPublisher( + SegmentPublishResult.retryableFailure("this error is retryable"), + attemptCount + ); + + Assert.assertEquals( + SegmentPublishResult.retryableFailure("this error is retryable"), + publisher.publishAnnotatedSegments(null, Set.of(), null, null) + ); + Assert.assertEquals(1, attemptCount.get()); + } + + private TransactionalSegmentPublisher createPublisher( + SegmentPublishResult publishResult, + AtomicInteger attemptCount + ) + { + return new TransactionalSegmentPublisher() + { + @Override + public SegmentPublishResult publishAnnotatedSegments( + @Nullable Set segmentsToBeOverwritten, + Set segmentsToPublish, + @Nullable Object commitMetadata, + @Nullable SegmentSchemaMapping segmentSchemaMapping + ) + { + attemptCount.incrementAndGet(); + return publishResult; + } + }; + } +} diff --git a/server/src/test/java/org/apache/druid/server/AsyncManagementForwardingServletTest.java b/server/src/test/java/org/apache/druid/server/AsyncManagementForwardingServletTest.java index ba7c78b99b0a..b49520021441 100644 --- a/server/src/test/java/org/apache/druid/server/AsyncManagementForwardingServletTest.java +++ b/server/src/test/java/org/apache/druid/server/AsyncManagementForwardingServletTest.java @@ -351,12 +351,36 @@ public void testBadProxyDestination() throws Exception Assert.assertFalse("overlord called", OVERLORD_EXPECTED_REQUEST.called); } + @Test + public void testCoordinatorNoPath() throws Exception + { + HttpURLConnection connection = ((HttpURLConnection) + new URL(StringUtils.format("http://localhost:%d/proxy/coordinator", port)).openConnection()); + connection.setRequestMethod("GET"); + + Assert.assertEquals(403, connection.getResponseCode()); // proxy with no path is not allowed + Assert.assertFalse("coordinator called", COORDINATOR_EXPECTED_REQUEST.called); + Assert.assertFalse("overlord called", OVERLORD_EXPECTED_REQUEST.called); + } + + @Test + public void testOverlordNoPath() throws Exception + { + HttpURLConnection connection = ((HttpURLConnection) + new URL(StringUtils.format("http://localhost:%d/proxy/overlord", port)).openConnection()); + connection.setRequestMethod("GET"); + + Assert.assertEquals(403, connection.getResponseCode()); // proxy with no path is not allowed + Assert.assertFalse("coordinator called", COORDINATOR_EXPECTED_REQUEST.called); + Assert.assertFalse("overlord called", OVERLORD_EXPECTED_REQUEST.called); + } + @Test public void testCoordinatorLeaderUnknown() throws Exception { isValidLeader = false; HttpURLConnection connection = ((HttpURLConnection) - new URL(StringUtils.format("http://localhost:%d/druid/coordinator", port)).openConnection()); + new URL(StringUtils.format("http://localhost:%d/druid/coordinator/status", port)).openConnection()); connection.setRequestMethod("GET"); Assert.assertEquals(503, connection.getResponseCode()); @@ -369,7 +393,7 @@ public void testOverlordLeaderUnknown() throws Exception { isValidLeader = false; HttpURLConnection connection = ((HttpURLConnection) - new URL(StringUtils.format("http://localhost:%d/druid/indexer", port)).openConnection()); + new URL(StringUtils.format("http://localhost:%d/druid/indexer/status", port)).openConnection()); connection.setRequestMethod("GET"); Assert.assertEquals(503, connection.getResponseCode()); diff --git a/server/src/test/java/org/apache/druid/server/JettyUtilsTest.java b/server/src/test/java/org/apache/druid/server/JettyUtilsTest.java index bd6d86f36bc7..de1cb2bf0b3f 100644 --- a/server/src/test/java/org/apache/druid/server/JettyUtilsTest.java +++ b/server/src/test/java/org/apache/druid/server/JettyUtilsTest.java @@ -36,4 +36,28 @@ public void testConcatenateForRewrite() ) ); } + + @Test + public void testConcatenateForRewriteEmptyPath() + { + Assert.assertNull( + JettyUtils.concatenateForRewrite( + "http://example.com", + "", + "q=baz%20qux" + ) + ); + } + + @Test + public void testConcatenateForRewriteInvalidPath() + { + Assert.assertNull( + JettyUtils.concatenateForRewrite( + "http://example.com", + "foo%20bar", // path must start with '/' + "q=baz%20qux" + ) + ); + } } diff --git a/server/src/test/java/org/apache/druid/server/SpecificSegmentsQuerySegmentWalker.java b/server/src/test/java/org/apache/druid/server/SpecificSegmentsQuerySegmentWalker.java index ff385e99f641..7cc21ecd083c 100644 --- a/server/src/test/java/org/apache/druid/server/SpecificSegmentsQuerySegmentWalker.java +++ b/server/src/test/java/org/apache/druid/server/SpecificSegmentsQuerySegmentWalker.java @@ -23,6 +23,8 @@ import com.google.common.collect.Ordering; import com.google.common.io.Closeables; import com.google.inject.Injector; +import org.apache.curator.shaded.com.google.common.collect.Lists; +import org.apache.druid.error.DruidException; import org.apache.druid.query.DataSource; import org.apache.druid.query.FrameBasedInlineDataSource; import org.apache.druid.query.InlineDataSource; @@ -34,6 +36,7 @@ import org.apache.druid.query.SegmentDescriptor; import org.apache.druid.query.lookup.LookupExtractorFactoryContainer; import org.apache.druid.query.lookup.LookupExtractorFactoryContainerProvider; +import org.apache.druid.segment.CompleteSegment; import org.apache.druid.segment.FrameBasedInlineSegmentWrangler; import org.apache.druid.segment.IncrementalIndexSegment; import org.apache.druid.segment.InlineSegmentWrangler; @@ -51,6 +54,7 @@ import org.apache.druid.server.metrics.NoopServiceEmitter; import org.apache.druid.sql.calcite.util.datasets.TestDataSet; import org.apache.druid.timeline.DataSegment; +import org.apache.druid.timeline.SegmentId; import org.apache.druid.timeline.VersionedIntervalTimeline; import org.apache.druid.timeline.partition.LinearShardSpec; import org.joda.time.Interval; @@ -76,8 +80,7 @@ public class SpecificSegmentsQuerySegmentWalker implements QuerySegmentWalker, C { private final QuerySegmentWalker walker; private final Map> timelines; - private final List closeables = new ArrayList<>(); - private final List segments = new ArrayList<>(); + private final List segments = new ArrayList<>(); private static final LookupExtractorFactoryContainerProvider LOOKUP_EXTRACTOR_FACTORY_CONTAINER_PROVIDER = new LookupExtractorFactoryContainerProvider() { @@ -185,6 +188,14 @@ public SpecificSegmentsQuerySegmentWalker( public SpecificSegmentsQuerySegmentWalker add(final DataSegment descriptor, final Segment segment) { + return add(new CompleteSegment(descriptor, segment)); + } + + public SpecificSegmentsQuerySegmentWalker add(CompleteSegment completeSegment) + { + DataSegment descriptor = completeSegment.getDataSegment(); + Segment segment = completeSegment.getSegment(); + final ReferenceCountingSegment referenceCountingSegment = ReferenceCountingSegment.wrapSegment( segment, @@ -199,8 +210,7 @@ public SpecificSegmentsQuerySegmentWalker add(final DataSegment descriptor, fina descriptor.getVersion(), descriptor.getShardSpec().createChunk(referenceCountingSegment) ); - segments.add(descriptor); - closeables.add(referenceCountingSegment); + segments.add(completeSegment); return this; } @@ -216,7 +226,7 @@ public SpecificSegmentsQuerySegmentWalker add(final DataSegment descriptor, fina public List getSegments() { - return segments; + return Lists.transform(segments, CompleteSegment::getDataSegment); } @Override @@ -234,7 +244,7 @@ public QueryRunner getQueryRunnerForSegments(final Query query, final @Override public void close() throws IOException { - for (Closeable closeable : closeables) { + for (Closeable closeable : segments) { Closeables.close(closeable, true); } } @@ -253,4 +263,23 @@ public SpecificSegmentsQuerySegmentWalker add(TestDataSet dataset, File tmpDir) indexNumericDims ); } + + public CompleteSegment getSegment(SegmentId segmentId) + { + List matches = new ArrayList<>(1); + for (CompleteSegment s : segments) { + SegmentId id = s.getDataSegment().getId(); + if (id.equals(segmentId)) { + matches.add(s); + } + } + if (matches.size() != 1) { + throw DruidException.defensive( + "SegmentId [%s] has unexpected number of matches! [%s]", + segmentId, + matches + ); + } + return matches.get(0); + } } diff --git a/server/src/test/java/org/apache/druid/server/coordinator/CompactionSupervisorConfigTest.java b/server/src/test/java/org/apache/druid/server/coordinator/CompactionSupervisorConfigTest.java deleted file mode 100644 index 59cc3ecf1718..000000000000 --- a/server/src/test/java/org/apache/druid/server/coordinator/CompactionSupervisorConfigTest.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.druid.server.coordinator; - -import com.fasterxml.jackson.core.JsonProcessingException; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.google.common.collect.ImmutableMap; -import org.apache.druid.indexer.CompactionEngine; -import org.apache.druid.jackson.DefaultObjectMapper; -import org.junit.Assert; -import org.junit.Test; - -public class CompactionSupervisorConfigTest -{ - private static final ObjectMapper OBJECT_MAPPER = new DefaultObjectMapper(); - - @Test - public void testCompactionSupervisorConfigSerde() throws JsonProcessingException - { - final boolean enabled = true; - final CompactionEngine defaultEngine = CompactionEngine.MSQ; - CompactionSupervisorConfig compactionSupervisorConfig = - OBJECT_MAPPER.readValue( - OBJECT_MAPPER.writeValueAsString(ImmutableMap.of("enabled", enabled, "engine", defaultEngine)), - CompactionSupervisorConfig.class - ); - Assert.assertEquals(new CompactionSupervisorConfig(enabled, defaultEngine), compactionSupervisorConfig); - } - - @Test - public void testCompactionSupervisorConfigEquality() - { - Assert.assertEquals( - new CompactionSupervisorConfig(true, CompactionEngine.MSQ), - new CompactionSupervisorConfig(true, CompactionEngine.MSQ) - ); - Assert.assertNotEquals( - new CompactionSupervisorConfig(true, CompactionEngine.NATIVE), - new CompactionSupervisorConfig(true, CompactionEngine.MSQ) - ); - Assert.assertNotEquals(new CompactionSupervisorConfig(true, CompactionEngine.NATIVE), "true"); - } -} diff --git a/server/src/test/java/org/apache/druid/server/coordinator/DataSourceCompactionConfigAuditEntryTest.java b/server/src/test/java/org/apache/druid/server/coordinator/DataSourceCompactionConfigAuditEntryTest.java index 4647ad8d9853..71fd30dbfd2a 100644 --- a/server/src/test/java/org/apache/druid/server/coordinator/DataSourceCompactionConfigAuditEntryTest.java +++ b/server/src/test/java/org/apache/druid/server/coordinator/DataSourceCompactionConfigAuditEntryTest.java @@ -33,7 +33,7 @@ public class DataSourceCompactionConfigAuditEntryTest private final AuditInfo auditInfo = new AuditInfo("author", "identity", "comment", "ip"); private final DataSourceCompactionConfigAuditEntry firstEntry = new DataSourceCompactionConfigAuditEntry( - new ClusterCompactionConfig(0.1, 9, true, null), + new ClusterCompactionConfig(0.1, 9, null, null, null), DataSourceCompactionConfig.builder().forDataSource(TestDataSource.WIKI).build(), auditInfo, DateTimes.nowUtc() @@ -43,7 +43,7 @@ public class DataSourceCompactionConfigAuditEntryTest public void testhasSameConfigWithSameBaseConfigIsTrue() { final DataSourceCompactionConfigAuditEntry secondEntry = new DataSourceCompactionConfigAuditEntry( - new ClusterCompactionConfig(0.1, 9, true, null), + new ClusterCompactionConfig(0.1, 9, null, null, null), DataSourceCompactionConfig.builder().forDataSource(TestDataSource.WIKI).build(), auditInfo, DateTimes.nowUtc() @@ -56,7 +56,7 @@ public void testhasSameConfigWithSameBaseConfigIsTrue() public void testhasSameConfigWithDifferentClusterConfigIsFalse() { DataSourceCompactionConfigAuditEntry secondEntry = new DataSourceCompactionConfigAuditEntry( - new ClusterCompactionConfig(0.2, 9, false, null), + new ClusterCompactionConfig(0.2, 9, null, null, null), DataSourceCompactionConfig.builder().forDataSource(TestDataSource.WIKI).build(), auditInfo, DateTimes.nowUtc() @@ -65,7 +65,7 @@ public void testhasSameConfigWithDifferentClusterConfigIsFalse() Assert.assertFalse(secondEntry.hasSameConfig(firstEntry)); secondEntry = new DataSourceCompactionConfigAuditEntry( - new ClusterCompactionConfig(0.1, 10, true, null), + new ClusterCompactionConfig(0.1, 10, null, null, null), DataSourceCompactionConfig.builder().forDataSource(TestDataSource.WIKI).build(), auditInfo, DateTimes.nowUtc() @@ -78,7 +78,7 @@ public void testhasSameConfigWithDifferentClusterConfigIsFalse() public void testhasSameConfigWithDifferentDatasourceConfigIsFalse() { DataSourceCompactionConfigAuditEntry secondEntry = new DataSourceCompactionConfigAuditEntry( - new ClusterCompactionConfig(0.1, 9, true, null), + new ClusterCompactionConfig(0.1, 9, null, null, null), DataSourceCompactionConfig.builder().forDataSource(TestDataSource.KOALA).build(), auditInfo, DateTimes.nowUtc() @@ -91,7 +91,7 @@ public void testhasSameConfigWithDifferentDatasourceConfigIsFalse() public void testhasSameConfigWithNullDatasourceConfigIsFalse() { final DataSourceCompactionConfigAuditEntry secondEntry = new DataSourceCompactionConfigAuditEntry( - new ClusterCompactionConfig(0.1, 9, true, null), + new ClusterCompactionConfig(0.1, 9, null, null, null), null, auditInfo, DateTimes.nowUtc() diff --git a/server/src/test/java/org/apache/druid/server/coordinator/DataSourceCompactionConfigHistoryTest.java b/server/src/test/java/org/apache/druid/server/coordinator/DataSourceCompactionConfigHistoryTest.java index bcdee91ecd52..ba670c31248b 100644 --- a/server/src/test/java/org/apache/druid/server/coordinator/DataSourceCompactionConfigHistoryTest.java +++ b/server/src/test/java/org/apache/druid/server/coordinator/DataSourceCompactionConfigHistoryTest.java @@ -177,7 +177,7 @@ public void testAddAndModifyClusterConfigShouldAddTwice() wikiAuditHistory.add(originalConfig, auditInfo, DateTimes.nowUtc()); final DruidCompactionConfig updatedConfig = originalConfig.withClusterConfig( - new ClusterCompactionConfig(0.2, null, null, null) + new ClusterCompactionConfig(0.2, null, null, null, null) ); wikiAuditHistory.add(updatedConfig, auditInfo, DateTimes.nowUtc()); diff --git a/server/src/test/java/org/apache/druid/server/coordinator/DruidCompactionConfigTest.java b/server/src/test/java/org/apache/druid/server/coordinator/DruidCompactionConfigTest.java index 2f481727fa10..ffd3b453b8f7 100644 --- a/server/src/test/java/org/apache/druid/server/coordinator/DruidCompactionConfigTest.java +++ b/server/src/test/java/org/apache/druid/server/coordinator/DruidCompactionConfigTest.java @@ -64,6 +64,7 @@ public void testSerdeWithDatasourceConfigs() throws Exception null, null, null, + null, null ); @@ -80,8 +81,9 @@ public void testCopyWithClusterConfig() final ClusterCompactionConfig clusterConfig = new ClusterCompactionConfig( 0.5, 10, - false, - new NewestSegmentFirstPolicy(null) + new NewestSegmentFirstPolicy(null), + true, + CompactionEngine.MSQ ); final DruidCompactionConfig copy = config.withClusterConfig(clusterConfig); @@ -106,4 +108,15 @@ public void testCopyWithDatasourceConfigs() Assert.assertEquals(1, copy.getCompactionConfigs().size()); Assert.assertEquals(dataSourceConfig, copy.findConfigForDatasource(TestDataSource.WIKI).orNull()); } + + @Test + public void testDefaultConfigValues() + { + final DruidCompactionConfig config = DruidCompactionConfig.empty(); + Assert.assertTrue(config.getCompactionConfigs().isEmpty()); + Assert.assertTrue(config.getCompactionPolicy() instanceof NewestSegmentFirstPolicy); + Assert.assertEquals(CompactionEngine.NATIVE, config.getEngine()); + Assert.assertEquals(0.1, config.getCompactionTaskSlotRatio(), 1e-9); + Assert.assertEquals(Integer.MAX_VALUE, config.getMaxCompactionTaskSlots()); + } } diff --git a/server/src/test/java/org/apache/druid/server/coordinator/DruidCoordinatorTest.java b/server/src/test/java/org/apache/druid/server/coordinator/DruidCoordinatorTest.java index d50e82e7baa0..abe5dce051f5 100644 --- a/server/src/test/java/org/apache/druid/server/coordinator/DruidCoordinatorTest.java +++ b/server/src/test/java/org/apache/druid/server/coordinator/DruidCoordinatorTest.java @@ -821,7 +821,7 @@ public void testSimulateRunWithEmptyDatasourceCompactionConfigs() .anyTimes(); EasyMock.replay(segmentsMetadataManager); CompactionSimulateResult result = coordinator.simulateRunWithConfigUpdate( - new ClusterCompactionConfig(0.2, null, null, null) + new ClusterCompactionConfig(0.2, null, null, null, null) ); Assert.assertEquals(Collections.emptyMap(), result.getCompactionStates()); } diff --git a/server/src/test/java/org/apache/druid/server/coordinator/duty/CompactSegmentsTest.java b/server/src/test/java/org/apache/druid/server/coordinator/duty/CompactSegmentsTest.java index e1a5ed52e335..3a887e9fec3b 100644 --- a/server/src/test/java/org/apache/druid/server/coordinator/duty/CompactSegmentsTest.java +++ b/server/src/test/java/org/apache/druid/server/coordinator/duty/CompactSegmentsTest.java @@ -672,7 +672,7 @@ public void testRunMultipleCompactionTaskSlotsWithUseAutoScaleSlotsOverMaxSlot() final TestOverlordClient overlordClient = new TestOverlordClient(JSON_MAPPER); final CompactSegments compactSegments = new CompactSegments(statusTracker, overlordClient); final CoordinatorRunStats stats = - doCompactSegments(compactSegments, createCompactionConfigs(), maxCompactionSlot, true); + doCompactSegments(compactSegments, createCompactionConfigs(), maxCompactionSlot); Assert.assertEquals(maxCompactionSlot, stats.get(Stats.Compaction.AVAILABLE_SLOTS)); Assert.assertEquals(maxCompactionSlot, stats.get(Stats.Compaction.MAX_SLOTS)); // Native takes up 1 task slot by default whereas MSQ takes up all available upto 5. Since there are 3 available @@ -692,7 +692,7 @@ public void testRunMultipleCompactionTaskSlotsWithUseAutoScaleSlotsUnderMaxSlot( final TestOverlordClient overlordClient = new TestOverlordClient(JSON_MAPPER); final CompactSegments compactSegments = new CompactSegments(statusTracker, overlordClient); final CoordinatorRunStats stats = - doCompactSegments(compactSegments, createCompactionConfigs(), maxCompactionSlot, true); + doCompactSegments(compactSegments, createCompactionConfigs(), maxCompactionSlot); Assert.assertEquals(MAXIMUM_CAPACITY_WITH_AUTO_SCALE, stats.get(Stats.Compaction.AVAILABLE_SLOTS)); Assert.assertEquals(MAXIMUM_CAPACITY_WITH_AUTO_SCALE, stats.get(Stats.Compaction.MAX_SLOTS)); // Native takes up 1 task slot by default whereas MSQ takes up all available upto 5. Since there are 10 available @@ -1865,16 +1865,6 @@ private CoordinatorRunStats doCompactSegments( List compactionConfigs, @Nullable Integer numCompactionTaskSlots ) - { - return doCompactSegments(compactSegments, compactionConfigs, numCompactionTaskSlots, false); - } - - private CoordinatorRunStats doCompactSegments( - CompactSegments compactSegments, - List compactionConfigs, - @Nullable Integer numCompactionTaskSlots, - boolean useAutoScaleSlots - ) { DruidCoordinatorRuntimeParams params = DruidCoordinatorRuntimeParams .builder() @@ -1884,7 +1874,8 @@ private CoordinatorRunStats doCompactSegments( compactionConfigs, numCompactionTaskSlots == null ? null : 1.0, // 100% when numCompactionTaskSlots is not null numCompactionTaskSlots, - useAutoScaleSlots, + null, + null, null ) ) diff --git a/server/src/test/java/org/apache/druid/server/http/CoordinatorCompactionConfigsResourceTest.java b/server/src/test/java/org/apache/druid/server/http/CoordinatorCompactionConfigsResourceTest.java index 4cef66d2ac55..029c0290c917 100644 --- a/server/src/test/java/org/apache/druid/server/http/CoordinatorCompactionConfigsResourceTest.java +++ b/server/src/test/java/org/apache/druid/server/http/CoordinatorCompactionConfigsResourceTest.java @@ -104,15 +104,16 @@ public void testGetDefaultClusterConfig() Assert.assertEquals(0.1, defaultConfig.getCompactionTaskSlotRatio(), DELTA); Assert.assertEquals(Integer.MAX_VALUE, defaultConfig.getMaxCompactionTaskSlots()); - Assert.assertFalse(defaultConfig.isUseAutoScaleSlots()); Assert.assertTrue(defaultConfig.getCompactionConfigs().isEmpty()); + Assert.assertFalse(defaultConfig.isUseSupervisors()); + Assert.assertEquals(CompactionEngine.NATIVE, defaultConfig.getEngine()); } @Test public void testUpdateClusterConfig() { Response response = resource.updateClusterCompactionConfig( - new ClusterCompactionConfig(0.5, 10, true, null), + new ClusterCompactionConfig(0.5, 10, null, true, CompactionEngine.MSQ), mockHttpServletRequest ); verifyStatus(Response.Status.OK, response); @@ -125,7 +126,8 @@ public void testUpdateClusterConfig() Assert.assertNotNull(updatedConfig); Assert.assertEquals(0.5, updatedConfig.getCompactionTaskSlotRatio(), DELTA); Assert.assertEquals(10, updatedConfig.getMaxCompactionTaskSlots()); - Assert.assertTrue(updatedConfig.isUseAutoScaleSlots()); + Assert.assertTrue(updatedConfig.isUseSupervisors()); + Assert.assertEquals(CompactionEngine.MSQ, updatedConfig.getEngine()); } @Test @@ -134,7 +136,7 @@ public void testSetCompactionTaskLimit() final DruidCompactionConfig defaultConfig = verifyAndGetPayload(resource.getCompactionConfig(), DruidCompactionConfig.class); - Response response = resource.setCompactionTaskLimit(0.5, 9, true, mockHttpServletRequest); + Response response = resource.setCompactionTaskLimit(0.5, 9, mockHttpServletRequest); verifyStatus(Response.Status.OK, response); final DruidCompactionConfig updatedConfig @@ -143,7 +145,6 @@ public void testSetCompactionTaskLimit() // Verify that the task slot fields have been updated Assert.assertEquals(0.5, updatedConfig.getCompactionTaskSlotRatio(), DELTA); Assert.assertEquals(9, updatedConfig.getMaxCompactionTaskSlots()); - Assert.assertTrue(updatedConfig.isUseAutoScaleSlots()); // Verify that the other fields are unchanged Assert.assertEquals(defaultConfig.getCompactionConfigs(), updatedConfig.getCompactionConfigs()); diff --git a/sql/src/test/java/org/apache/druid/sql/calcite/util/SqlTestFramework.java b/sql/src/test/java/org/apache/druid/sql/calcite/util/SqlTestFramework.java index d88af75df644..e99550d08c15 100644 --- a/sql/src/test/java/org/apache/druid/sql/calcite/util/SqlTestFramework.java +++ b/sql/src/test/java/org/apache/druid/sql/calcite/util/SqlTestFramework.java @@ -963,7 +963,6 @@ private SystemSchema makeSystemSchema(AuthorizerMapper authorizerMapper, DruidSc return CalciteTests.createMockSystemSchema(druidSchema, timelineServerView, authorizerMapper); } - @Provides @LazySingleton private TimelineServerView makeTimelineServerView(SpecificSegmentsQuerySegmentWalker walker) diff --git a/sql/src/test/quidem/qatests/qaUnnest/array/ingest.json b/sql/src/test/quidem/qatests/qaUnnest/array/ingest.json new file mode 100644 index 000000000000..548dca99bda6 --- /dev/null +++ b/sql/src/test/quidem/qatests/qaUnnest/array/ingest.json @@ -0,0 +1,92 @@ +{ + "type": "index_parallel", + "spec": { + "ioConfig": { + "type": "index_parallel", + "inputSource": { + "type": "inline", + "data": "{\"timestamp\":\"2022-01-01T00:00:00\",\"s_int\":1,\"s_null\":null,\"a_bool\":[true,false,null],\"a_int\":[1,2,null],\"a_float\":[0.1,0.2,null],\"a_str\":[\"S1\",\"S2\",null],\"a_null\":[null,null,null],\"a_empty\":[],\"a_mixed\":[true,1,0.1,\"S1\",null],\"a_nested\":[[true,false,null],[1,2,null],[0.1,0.2,null],[\"S1\",\"S2\",null],[null,null,null],[],[true,1,0.1,\"S1\",null],[[true,false,null],[1,2,null],[0.1,0.2,null],[\"S1\",\"S2\",null],[null,null,null],[],[true,1,0.1,\"S1\",null],[[true,false,null],[1,2,null],[0.1,0.2,null],[\"S1\",\"S2\",null],[null,null,null],[],[true,1,0.1,\"S1\",null]]]]}\n{\"timestamp\":\"2022-02-01T00:00:00\",\"s_int\":2,\"s_null\":null,\"a_bool\":[null,true,false],\"a_int\":[null,1,2],\"a_float\":[null,0.1,0.2],\"a_str\":[null,\"S1\",\"S2\"],\"a_null\":[null,null,null],\"a_empty\":[],\"a_mixed\":[null,true,1,0.1,\"S1\"],\"a_nested\":[[null,true,false],[null,1,2],[null,0.1,0.2],[null,\"S1\",\"S2\"],[null,null,null],[],[null,true,1,0.1,\"S1\"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,\"S1\",\"S2\"],[null,null,null],[],[null,true,1,0.1,\"S1\"],[[null,true,false],[null,1,2],[null,0.1,0.2],[null,\"S1\",\"S2\"],[null,null,null],[],[null,true,1,0.1,\"S1\"]]]]}\n{\"timestamp\":\"2022-03-01T00:00:00\",\"s_int\":null,\"s_null\":null,\"a_bool\":[false,null,true],\"a_int\":[2,null,1],\"a_float\":[0.2,null,0.1],\"a_str\":[\"S2\",null,\"S1\"],\"a_null\":[null,null,null],\"a_empty\":[],\"a_mixed\":[\"S1\",null,true,1,0.1],\"a_nested\":[[false,null,true],[2,null,1],[0.2,null,0.1],[\"S2\",null,\"S1\"],[null,null,null],[],[\"S1\",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],[\"S2\",null,\"S1\"],[null,null,null],[],[\"S1\",null,true,1,0.1],[[false,null,true],[2,null,1],[0.2,null,0.1],[\"S2\",null,\"S1\"],[null,null,null],[],[\"S1\",null,true,1,0.1]]]]}\n" + }, + "inputFormat": { + "type": "json" + }, + "appendToExisting": false + }, + "tuningConfig": { + "type": "index_parallel", + "partitionsSpec": { + "type": "dynamic", + "maxRowsPerSegment": 10000000, + "maxTotalRows": 500000000 + }, + "maxNumConcurrentSubTasks": 1, + "indexSpec": { + "stringDictionaryEncoding": { + "type": "frontCoded", + "bucketSize": 4, + "formatVersion": 1 + } + } + }, + "dataSchema": { + "dataSource": "test_unnest", + "granularitySpec": { + "type": "uniform", + "queryGranularity": "NONE", + "rollup": false, + "segmentGranularity": "YEAR" + }, + "timestampSpec": { + "column": "timestamp", + "format": "auto" + }, + "dimensionsSpec": { + "dimensions": [ + { + "type": "auto", + "name": "s_int" + }, + { + "type": "auto", + "name": "s_null" + }, + { + "type": "auto", + "name": "a_bool" + }, + { + "type": "auto", + "name": "a_int" + }, + { + "type": "auto", + "name": "a_float" + }, + { + "type": "auto", + "name": "a_str" + }, + { + "type": "auto", + "name": "a_null" + }, + { + "type": "auto", + "name": "a_empty" + }, + { + "type": "auto", + "name": "a_mixed" + }, + { + "type": "auto", + "name": "a_nested" + } + ] + }, + "metricsSpec": null, + "transformSpec": null + } + }, + "context": null +} diff --git a/sql/src/test/quidem/qatests/qaUnnest/mv/ingest.json b/sql/src/test/quidem/qatests/qaUnnest/mv/ingest.json new file mode 100644 index 000000000000..ab63b7e70f85 --- /dev/null +++ b/sql/src/test/quidem/qatests/qaUnnest/mv/ingest.json @@ -0,0 +1,112 @@ +{ + "type": "index_parallel", + "spec": { + "ioConfig": { + "type": "index_parallel", + "inputSource": { + "type": "inline", + "data": "{\"timestamp\":\"2022-01-01T00:00:00\",\"c_str\": null,\"c_long\": 0,\"c_float\": 0.0,\"c_double\": 0.0,\"c_null\": null,\"c_mv_complex\": [\"my_null\",\"my_empty\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num\": [\"-1\",\"0\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_val\": [null,\"\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num_with_null_and_empty_val\": [null,\"\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_row\": null,\"c_mv_num_with_null_and_empty_row\": null,\"c_mv_all_null_and_empty_val\": [null,\"\",null,\"\",null],\"c_mv_empty\": []}\n{\"timestamp\":\"2022-01-01T00:00:00\",\"c_str\": \"\",\"c_long\": 1,\"c_float\": 0.1,\"c_double\": 0.1,\"c_null\": null,\"c_mv_complex\": [\"my_null\",\"my_empty\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num\": [\"-1\",\"0\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_val\": [null,\"\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num_with_null_and_empty_val\": [null,\"\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_row\": [],\"c_mv_num_with_null_and_empty_row\": [],\"c_mv_all_null_and_empty_val\": [null,\"\",null,\"\",null],\"c_mv_empty\": []}\n{\"timestamp\":\"2022-01-01T00:00:00\",\"c_str\": \"str2\",\"c_long\": 2,\"c_float\": 0.2,\"c_double\": 0.2,\"c_null\": null,\"c_mv_complex\": [\"my_null\",\"my_empty\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num\": [\"-1\",\"0\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_val\": [null,\"\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num_with_null_and_empty_val\": [null,\"\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_row\": [null,\"\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num_with_null_and_empty_row\": [null,\"\",\"1\",\"2\",\"3\"],\"c_mv_all_null_and_empty_val\": [null,\"\",null,\"\",null],\"c_mv_empty\": []}\n{\"timestamp\":\"2022-01-01T00:00:00\",\"c_str\": \"str3\",\"c_long\": 3,\"c_float\": 0.3,\"c_double\": 0.3,\"c_null\": null,\"c_mv_complex\": [\"my_null\",\"my_empty\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num\": [\"-1\",\"0\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_val\": [null,\"\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num_with_null_and_empty_val\": [null,\"\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_row\": [null,\"\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num_with_null_and_empty_row\": [null,\"\",\"1\",\"2\",\"3\"],\"c_mv_all_null_and_empty_val\": [null,\"\",null,\"\",null],\"c_mv_empty\": []}\n{\"timestamp\":\"2022-01-01T00:00:00\",\"c_str\": \"str4\",\"c_long\": 4,\"c_float\": 0.4,\"c_double\": 0.4,\"c_null\": null,\"c_mv_complex\": [\"my_null\",\"my_empty\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num\": [\"-1\",\"0\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_val\": [null,\"\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num_with_null_and_empty_val\": [null,\"\",\"1\",\"2\",\"3\"],\"c_mv_complex_with_null_and_empty_row\": [null,\"\",\"1\",[\"2\"],[\"3\",[\"4\",\"5\"]]],\"c_mv_num_with_null_and_empty_row\": [null,\"\",\"1\",\"2\",\"3\"],\"c_mv_all_null_and_empty_val\": [null,\"\",null,\"\",null],\"c_mv_empty\": []}\n" + }, + "inputFormat": { + "type": "json" + }, + "appendToExisting": false + }, + "tuningConfig": { + "type": "index_parallel", + "partitionsSpec": { + "type": "dynamic", + "maxRowsPerSegment": 10000000, + "maxTotalRows": 500000000 + }, + "maxNumConcurrentSubTasks": 1, + "indexSpec": { + "stringDictionaryEncoding": { + "type": "frontCoded", + "bucketSize": 4, + "formatVersion": 1 + } + } + }, + "dataSchema": { + "dataSource": "test_unnest", + "granularitySpec": { + "type": "uniform", + "queryGranularity": "NONE", + "rollup": false, + "segmentGranularity": "YEAR" + }, + "timestampSpec": { + "column": "timestamp", + "format": "auto" + }, + "dimensionsSpec": { + "dimensions": [ + { + "type": "string", + "name": "c_str" + }, + { + "type": "long", + "name": "c_long" + }, + { + "type": "float", + "name": "c_float" + }, + { + "type": "double", + "name": "c_double" + }, + { + "type": "string", + "name": "c_null" + }, + { + "type": "string", + "name": "c_mv_complex", + "multiValueHandling": "ARRAY" + }, + { + "type": "string", + "name": "c_mv_num", + "multiValueHandling": "ARRAY" + }, + { + "type": "string", + "name": "c_mv_complex_with_null_and_empty_val", + "multiValueHandling": "ARRAY" + }, + { + "type": "string", + "name": "c_mv_num_with_null_and_empty_val", + "multiValueHandling": "ARRAY" + }, + { + "type": "string", + "name": "c_mv_complex_with_null_and_empty_row", + "multiValueHandling": "ARRAY" + }, + { + "type": "string", + "name": "c_mv_num_with_null_and_empty_row", + "multiValueHandling": "ARRAY" + }, + { + "type": "string", + "name": "c_mv_all_null_and_empty_val", + "multiValueHandling": "ARRAY" + }, + { + "type": "string", + "name": "c_mv_empty", + "multiValueHandling": "ARRAY" + } + ] + }, + "metricsSpec": null, + "transformSpec": null + } + }, + "context": null +} diff --git a/web-console/src/react-table/index.ts b/web-console/src/react-table/index.ts index 3f1900fb6109..65b62cff5b4d 100644 --- a/web-console/src/react-table/index.ts +++ b/web-console/src/react-table/index.ts @@ -16,6 +16,6 @@ * limitations under the License. */ +export * from './react-table-filters'; export * from './react-table-inputs'; export * from './react-table-pagination/react-table-pagination'; -export * from './react-table-utils'; diff --git a/web-console/src/react-table/react-table-utils.spec.ts b/web-console/src/react-table/react-table-filters.spec.ts similarity index 98% rename from web-console/src/react-table/react-table-utils.spec.ts rename to web-console/src/react-table/react-table-filters.spec.ts index 1dd245b49f70..03737825cbd9 100644 --- a/web-console/src/react-table/react-table-utils.spec.ts +++ b/web-console/src/react-table/react-table-filters.spec.ts @@ -20,7 +20,7 @@ import { sqlQueryCustomTableFilter, stringToTableFilters, tableFiltersToString, -} from './react-table-utils'; +} from './react-table-filters'; describe('react-table-utils', () => { describe('sqlQueryCustomTableFilter', () => { diff --git a/web-console/src/react-table/react-table-utils.ts b/web-console/src/react-table/react-table-filters.ts similarity index 100% rename from web-console/src/react-table/react-table-utils.ts rename to web-console/src/react-table/react-table-filters.ts diff --git a/web-console/src/react-table/react-table-inputs.tsx b/web-console/src/react-table/react-table-inputs.tsx index 79932b490e4f..6794cff42822 100644 --- a/web-console/src/react-table/react-table-inputs.tsx +++ b/web-console/src/react-table/react-table-inputs.tsx @@ -31,7 +31,7 @@ import { filterModeToIcon, filterModeToTitle, parseFilterModeAndNeedle, -} from './react-table-utils'; +} from './react-table-filters'; interface FilterRendererProps { column: Column; diff --git a/web-console/src/utils/query-manager/query-manager.ts b/web-console/src/utils/query-manager/query-manager.ts index 1023b23412ad..0b7fcf5680ed 100644 --- a/web-console/src/utils/query-manager/query-manager.ts +++ b/web-console/src/utils/query-manager/query-manager.ts @@ -246,8 +246,8 @@ export class QueryManager { } private trigger() { - if (this.currentRunCancelFn) { - // Currently loading + if (this.currentRunCancelFn && !this.state.auxiliaryLoading) { + // Currently loading main query void this.runWhenLoading(); } else { this.setState( diff --git a/web-console/src/views/datasources-view/datasources-view.tsx b/web-console/src/views/datasources-view/datasources-view.tsx index 4921027100ad..ea0df40bb0a4 100644 --- a/web-console/src/views/datasources-view/datasources-view.tsx +++ b/web-console/src/views/datasources-view/datasources-view.tsx @@ -527,9 +527,7 @@ GROUP BY 1, 2`; return datasourcesAndDefaultRules; } }); - } - - if (capabilities.hasOverlordAccess()) { + } else if (capabilities.hasOverlordAccess()) { auxiliaryQueries.push(async (datasourcesAndDefaultRules, cancelToken) => { try { const taskList = await getApiArray( @@ -684,14 +682,14 @@ GROUP BY 1, 2`; } }; - private fetchDatasourceData() { + private readonly fetchData = () => { const { capabilities } = this.props; const { visibleColumns, showUnused } = this.state; this.datasourceQueryManager.runQuery({ capabilities, visibleColumns, showUnused }); - } + }; componentDidMount(): void { - this.fetchDatasourceData(); + this.fetchData(); } componentWillUnmount(): void { @@ -730,9 +728,7 @@ GROUP BY 1, 2`; onClose={() => { this.setState({ datasourceToMarkAsUnusedAllSegmentsIn: undefined }); }} - onSuccess={() => { - this.fetchDatasourceData(); - }} + onSuccess={this.fetchData} >

      {`Are you sure you want to mark as unused all segments in '${datasourceToMarkAsUnusedAllSegmentsIn}'?`} @@ -774,9 +770,7 @@ GROUP BY 1, 2`; onClose={() => { this.setState({ datasourceToMarkAllNonOvershadowedSegmentsAsUsedIn: undefined }); }} - onSuccess={() => { - this.fetchDatasourceData(); - }} + onSuccess={this.fetchData} >

      {`Are you sure you want to mark as used all non-overshadowed segments in '${datasourceToMarkAllNonOvershadowedSegmentsAsUsedIn}'?`}

      @@ -811,9 +805,7 @@ GROUP BY 1, 2`; onClose={() => { this.setState({ datasourceToMarkSegmentsByIntervalIn: undefined }); }} - onSuccess={() => { - this.fetchDatasourceData(); - }} + onSuccess={this.fetchData} >

      {`Please select the interval in which you want to mark segments as ${usedWord} in '${datasourceToMarkSegmentsByIntervalIn}'?`}

      @@ -840,9 +832,7 @@ GROUP BY 1, 2`; onClose={() => { this.setState({ killDatasource: undefined }); }} - onSuccess={() => { - this.fetchDatasourceData(); - }} + onSuccess={this.fetchData} /> ); } @@ -930,7 +920,7 @@ GROUP BY 1, 2`; message: 'Retention rules submitted successfully', intent: Intent.SUCCESS, }); - this.fetchDatasourceData(); + this.fetchData(); }; private readonly editDefaultRules = () => { @@ -956,7 +946,7 @@ GROUP BY 1, 2`; try { await Api.instance.post(`/druid/coordinator/v1/config/compaction`, compactionConfig); this.setState({ compactionDialogOpenOn: undefined }); - this.fetchDatasourceData(); + this.fetchData(); } catch (e) { AppToaster.show({ message: getDruidErrorMessage(e), @@ -980,7 +970,7 @@ GROUP BY 1, 2`; await Api.instance.delete( `/druid/coordinator/v1/config/compaction/${Api.encodePath(datasource)}`, ); - this.setState({ compactionDialogOpenOn: undefined }, () => this.fetchDatasourceData()); + this.setState({ compactionDialogOpenOn: undefined }, () => this.fetchData()); } catch (e) { AppToaster.show({ message: getDruidErrorMessage(e), @@ -995,7 +985,7 @@ GROUP BY 1, 2`; private toggleUnused(showUnused: boolean) { this.setState({ showUnused: !showUnused }, () => { if (showUnused) return; - this.fetchDatasourceData(); + this.fetchData(); }); } @@ -1759,10 +1749,7 @@ GROUP BY 1, 2`; visibleColumns: prevState.visibleColumns.toggle(column), })) } - onClose={added => { - if (!added) return; - this.fetchDatasourceData(); - }} + onClose={this.fetchData} tableColumnsHidden={visibleColumns.getHiddenColumns()} /> diff --git a/web-console/src/views/lookups-view/lookups-view.tsx b/web-console/src/views/lookups-view/lookups-view.tsx index 25f45455e224..39b7a920f1cb 100644 --- a/web-console/src/views/lookups-view/lookups-view.tsx +++ b/web-console/src/views/lookups-view/lookups-view.tsx @@ -332,17 +332,18 @@ export class LookupsView extends React.PureComponent ( - - {row.value} - - ); + return function FilterableCell(row: { value: any }) { + return ( + + {row.value} + + ); + }; } private renderLookupsTable() { diff --git a/web-console/src/views/segments-view/segments-view.tsx b/web-console/src/views/segments-view/segments-view.tsx index ff3b0f76d8b7..ef44b83dc6ff 100644 --- a/web-console/src/views/segments-view/segments-view.tsx +++ b/web-console/src/views/segments-view/segments-view.tsx @@ -516,18 +516,19 @@ export class SegmentsView extends React.PureComponent ( - - {valueFn(row.value)} - - ); + return function FilterableCell(row: { value: any }) { + return ( + + {valueFn(row.value)} + + ); + }; } renderSegmentsTable() { @@ -580,7 +581,7 @@ export class SegmentsView extends React.PureComponent this.setState({ pageSize })} pageSizeOptions={STANDARD_TABLE_PAGE_SIZE_OPTIONS} - showPagination={segments.length >= STANDARD_TABLE_PAGE_SIZE} + showPagination={segments.length >= STANDARD_TABLE_PAGE_SIZE || page > 0} showPageJump={false} ofText="" pivotBy={groupByInterval ? ['interval'] : []} diff --git a/web-console/src/views/services-view/__snapshots__/services-view.spec.tsx.snap b/web-console/src/views/services-view/__snapshots__/services-view.spec.tsx.snap index b304833a8cce..2cf28b8b22ca 100644 --- a/web-console/src/views/services-view/__snapshots__/services-view.spec.tsx.snap +++ b/web-console/src/views/services-view/__snapshots__/services-view.spec.tsx.snap @@ -62,6 +62,7 @@ exports[`ServicesView renders data 1`] = ` ] } onChange={[Function]} + onClose={[Function]} tableColumnsHidden={[]} /> diff --git a/web-console/src/views/services-view/services-view.tsx b/web-console/src/views/services-view/services-view.tsx index 2a68eaed1cdc..58dca1410348 100644 --- a/web-console/src/views/services-view/services-view.tsx +++ b/web-console/src/views/services-view/services-view.tsx @@ -354,29 +354,34 @@ ORDER BY } componentDidMount(): void { - const { capabilities } = this.props; - const { visibleColumns } = this.state; - this.serviceQueryManager.runQuery({ capabilities, visibleColumns }); + this.fetchData(); } componentWillUnmount(): void { this.serviceQueryManager.terminate(); } + private readonly fetchData = () => { + const { capabilities } = this.props; + const { visibleColumns } = this.state; + this.serviceQueryManager.runQuery({ capabilities, visibleColumns }); + }; + private renderFilterableCell(field: string) { const { filters, onFiltersChange } = this.props; - // eslint-disable-next-line react/display-name - return (row: { value: any }) => ( - - {row.value} - - ); + return function FilterableCell(row: { value: any }) { + return ( + + {row.value} + + ); + }; } renderServicesTable() { @@ -837,6 +842,7 @@ ORDER BY visibleColumns: prevState.visibleColumns.toggle(column), })) } + onClose={this.fetchData} tableColumnsHidden={visibleColumns.getHiddenColumns()} /> diff --git a/web-console/src/views/supervisors-view/__snapshots__/supervisors-view.spec.tsx.snap b/web-console/src/views/supervisors-view/__snapshots__/supervisors-view.spec.tsx.snap index a3fdd9212785..84b5cbe6e34a 100644 --- a/web-console/src/views/supervisors-view/__snapshots__/supervisors-view.spec.tsx.snap +++ b/web-console/src/views/supervisors-view/__snapshots__/supervisors-view.spec.tsx.snap @@ -93,6 +93,7 @@ exports[`SupervisorsView matches snapshot 1`] = ` ] } onChange={[Function]} + onClose={[Function]} tableColumnsHidden={[]} /> diff --git a/web-console/src/views/supervisors-view/supervisors-view.tsx b/web-console/src/views/supervisors-view/supervisors-view.tsx index a81fda3d7f00..8b692c26bfd1 100644 --- a/web-console/src/views/supervisors-view/supervisors-view.tsx +++ b/web-console/src/views/supervisors-view/supervisors-view.tsx @@ -67,6 +67,7 @@ import { changeByIndex, checkedCircleIcon, deepGet, + filterMap, formatByteRate, formatBytes, formatInteger, @@ -333,9 +334,11 @@ export class SupervisorsView extends React.PureComponent< if (visibleColumns.shown('Stats')) { auxiliaryQueries.push( - ...supervisors.map( - (supervisor, i): AuxiliaryQueryFn => - async (rows, cancelToken) => { + ...filterMap( + supervisors, + (supervisor, i): AuxiliaryQueryFn | undefined => { + if (oneOf(supervisor.type, 'autocompact', 'scheduled_batch')) return; // These supervisors do not report stats + return async (rows, cancelToken) => { const stats = ( await Api.instance.get( `/druid/indexer/v1/supervisor/${Api.encodePath( @@ -345,7 +348,8 @@ export class SupervisorsView extends React.PureComponent< ) ).data; return changeByIndex(rows, i, row => ({ ...row, stats })); - }, + }; + }, ), ); } @@ -662,17 +666,18 @@ export class SupervisorsView extends React.PureComponent< private renderSupervisorFilterableCell(field: string) { const { filters, onFiltersChange } = this.props; - // eslint-disable-next-line react/display-name - return (row: { value: any }) => ( - - {row.value} - - ); + return function SupervisorFilterableCell(row: { value: any }) { + return ( + + {row.value} + + ); + }; } private onSupervisorDetail(supervisor: SupervisorQueryResultRow) { @@ -731,7 +736,7 @@ export class SupervisorsView extends React.PureComponent< pageSize={pageSize} onPageSizeChange={pageSize => this.setState({ pageSize })} pageSizeOptions={SMALL_TABLE_PAGE_SIZE_OPTIONS} - showPagination={supervisors.length >= SMALL_TABLE_PAGE_SIZE} + showPagination={supervisors.length >= SMALL_TABLE_PAGE_SIZE || page > 0} showPageJump={false} ofText="" columns={[ @@ -1169,6 +1174,7 @@ export class SupervisorsView extends React.PureComponent< visibleColumns: prevState.visibleColumns.toggle(column), })) } + onClose={this.fetchData} tableColumnsHidden={visibleColumns.getHiddenColumns()} /> diff --git a/web-console/src/views/tasks-view/tasks-view.tsx b/web-console/src/views/tasks-view/tasks-view.tsx index 7dc9b2ab5b00..5972f5ef7ead 100644 --- a/web-console/src/views/tasks-view/tasks-view.tsx +++ b/web-console/src/views/tasks-view/tasks-view.tsx @@ -18,7 +18,8 @@ import { Button, ButtonGroup, Intent, Label, MenuItem, Tag } from '@blueprintjs/core'; import { IconNames } from '@blueprintjs/icons'; -import React from 'react'; +import { formatDistanceToNow } from 'date-fns'; +import React, { type ReactNode } from 'react'; import type { Filter } from 'react-table'; import ReactTable from 'react-table'; @@ -319,20 +320,26 @@ ORDER BY ); } - private renderTaskFilterableCell(field: string) { + private renderTaskFilterableCell( + field: string, + enableComparisons = false, + valueFn: (value: string) => ReactNode = String, + ) { const { filters, onFiltersChange } = this.props; - // eslint-disable-next-line react/display-name - return (row: { value: any }) => ( - - {row.value} - - ); + return function TaskFilterableCell(row: { value: any }) { + return ( + + {valueFn(row.value)} + + ); + }; } private onTaskDetail(task: TaskQueryResultRow) { @@ -473,7 +480,16 @@ ORDER BY Header: 'Created time', accessor: 'created_time', width: 190, - Cell: this.renderTaskFilterableCell('created_time'), + Cell: this.renderTaskFilterableCell('created_time', true, value => { + const valueAsDate = new Date(value); + return isNaN(valueAsDate.valueOf()) ? ( + String(value) + ) : ( + + {value} + + ); + }), Aggregated: () => '', show: visibleColumns.shown('Created time'), }, @@ -486,7 +502,21 @@ ORDER BY Cell({ value, original, aggregated }) { if (aggregated) return ''; if (value > 0) { - return formatDuration(value); + const shownDuration = formatDuration(value); + + const start = new Date(original.created_time); + if (isNaN(start.valueOf())) return shownDuration; + + const end = new Date(start.valueOf() + value); + return ( + + {shownDuration} + + ); } if (oneOf(original.status, 'RUNNING', 'PENDING') && original.created_time) { // Compute running duration from the created time if it exists