http://git-wip-us.apache.org/repos/asf/spark/blob/7f6d10a7/sql/core/src/test/resources/sql-tests/results/typeCoercion/native/inConversion.sql.out
----------------------------------------------------------------------
diff --git 
a/sql/core/src/test/resources/sql-tests/results/typeCoercion/native/inConversion.sql.out
 
b/sql/core/src/test/resources/sql-tests/results/typeCoercion/native/inConversion.sql.out
new file mode 100644
index 0000000..bf8ddee
--- /dev/null
+++ 
b/sql/core/src/test/resources/sql-tests/results/typeCoercion/native/inConversion.sql.out
@@ -0,0 +1,2454 @@
+-- Automatically generated by SQLQueryTestSuite
+-- Number of queries: 289
+
+
+-- !query 0
+CREATE TEMPORARY VIEW t AS SELECT 1
+-- !query 0 schema
+struct<>
+-- !query 0 output
+
+
+
+-- !query 1
+SELECT cast(1 as tinyint) in (cast(1 as tinyint)) FROM t
+-- !query 1 schema
+struct<(CAST(1 AS TINYINT) IN (CAST(1 AS TINYINT))):boolean>
+-- !query 1 output
+true
+
+
+-- !query 2
+SELECT cast(1 as tinyint) in (cast(1 as smallint)) FROM t
+-- !query 2 schema
+struct<(CAST(CAST(1 AS TINYINT) AS SMALLINT) IN (CAST(CAST(1 AS SMALLINT) AS 
SMALLINT))):boolean>
+-- !query 2 output
+true
+
+
+-- !query 3
+SELECT cast(1 as tinyint) in (cast(1 as int)) FROM t
+-- !query 3 schema
+struct<(CAST(CAST(1 AS TINYINT) AS INT) IN (CAST(CAST(1 AS INT) AS 
INT))):boolean>
+-- !query 3 output
+true
+
+
+-- !query 4
+SELECT cast(1 as tinyint) in (cast(1 as bigint)) FROM t
+-- !query 4 schema
+struct<(CAST(CAST(1 AS TINYINT) AS BIGINT) IN (CAST(CAST(1 AS BIGINT) AS 
BIGINT))):boolean>
+-- !query 4 output
+true
+
+
+-- !query 5
+SELECT cast(1 as tinyint) in (cast(1 as float)) FROM t
+-- !query 5 schema
+struct<(CAST(CAST(1 AS TINYINT) AS FLOAT) IN (CAST(CAST(1 AS FLOAT) AS 
FLOAT))):boolean>
+-- !query 5 output
+true
+
+
+-- !query 6
+SELECT cast(1 as tinyint) in (cast(1 as double)) FROM t
+-- !query 6 schema
+struct<(CAST(CAST(1 AS TINYINT) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE))):boolean>
+-- !query 6 output
+true
+
+
+-- !query 7
+SELECT cast(1 as tinyint) in (cast(1 as decimal(10, 0))) FROM t
+-- !query 7 schema
+struct<(CAST(CAST(1 AS TINYINT) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DECIMAL(10,0)))):boolean>
+-- !query 7 output
+true
+
+
+-- !query 8
+SELECT cast(1 as tinyint) in (cast(1 as string)) FROM t
+-- !query 8 schema
+struct<(CAST(CAST(1 AS TINYINT) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING))):boolean>
+-- !query 8 output
+true
+
+
+-- !query 9
+SELECT cast(1 as tinyint) in (cast('1' as binary)) FROM t
+-- !query 9 schema
+struct<>
+-- !query 9 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS TINYINT) IN (CAST('1' AS BINARY)))' due to data 
type mismatch: Arguments must be same type but were: ByteType != BinaryType; 
line 1 pos 26
+
+
+-- !query 10
+SELECT cast(1 as tinyint) in (cast(1 as boolean)) FROM t
+-- !query 10 schema
+struct<>
+-- !query 10 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS TINYINT) IN (CAST(1 AS BOOLEAN)))' due to data type 
mismatch: Arguments must be same type but were: ByteType != BooleanType; line 1 
pos 26
+
+
+-- !query 11
+SELECT cast(1 as tinyint) in (cast('2017-12-11 09:30:00.0' as timestamp)) FROM 
t
+-- !query 11 schema
+struct<>
+-- !query 11 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS TINYINT) IN (CAST('2017-12-11 09:30:00.0' AS 
TIMESTAMP)))' due to data type mismatch: Arguments must be same type but were: 
ByteType != TimestampType; line 1 pos 26
+
+
+-- !query 12
+SELECT cast(1 as tinyint) in (cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 12 schema
+struct<>
+-- !query 12 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS TINYINT) IN (CAST('2017-12-11 09:30:00' AS DATE)))' 
due to data type mismatch: Arguments must be same type but were: ByteType != 
DateType; line 1 pos 26
+
+
+-- !query 13
+SELECT cast(1 as smallint) in (cast(1 as tinyint)) FROM t
+-- !query 13 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS SMALLINT) IN (CAST(CAST(1 AS TINYINT) AS 
SMALLINT))):boolean>
+-- !query 13 output
+true
+
+
+-- !query 14
+SELECT cast(1 as smallint) in (cast(1 as smallint)) FROM t
+-- !query 14 schema
+struct<(CAST(1 AS SMALLINT) IN (CAST(1 AS SMALLINT))):boolean>
+-- !query 14 output
+true
+
+
+-- !query 15
+SELECT cast(1 as smallint) in (cast(1 as int)) FROM t
+-- !query 15 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS INT) IN (CAST(CAST(1 AS INT) AS 
INT))):boolean>
+-- !query 15 output
+true
+
+
+-- !query 16
+SELECT cast(1 as smallint) in (cast(1 as bigint)) FROM t
+-- !query 16 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS BIGINT) IN (CAST(CAST(1 AS BIGINT) AS 
BIGINT))):boolean>
+-- !query 16 output
+true
+
+
+-- !query 17
+SELECT cast(1 as smallint) in (cast(1 as float)) FROM t
+-- !query 17 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS FLOAT) IN (CAST(CAST(1 AS FLOAT) AS 
FLOAT))):boolean>
+-- !query 17 output
+true
+
+
+-- !query 18
+SELECT cast(1 as smallint) in (cast(1 as double)) FROM t
+-- !query 18 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE))):boolean>
+-- !query 18 output
+true
+
+
+-- !query 19
+SELECT cast(1 as smallint) in (cast(1 as decimal(10, 0))) FROM t
+-- !query 19 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DECIMAL(10,0)))):boolean>
+-- !query 19 output
+true
+
+
+-- !query 20
+SELECT cast(1 as smallint) in (cast(1 as string)) FROM t
+-- !query 20 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING))):boolean>
+-- !query 20 output
+true
+
+
+-- !query 21
+SELECT cast(1 as smallint) in (cast('1' as binary)) FROM t
+-- !query 21 schema
+struct<>
+-- !query 21 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS SMALLINT) IN (CAST('1' AS BINARY)))' due to data 
type mismatch: Arguments must be same type but were: ShortType != BinaryType; 
line 1 pos 27
+
+
+-- !query 22
+SELECT cast(1 as smallint) in (cast(1 as boolean)) FROM t
+-- !query 22 schema
+struct<>
+-- !query 22 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS SMALLINT) IN (CAST(1 AS BOOLEAN)))' due to data 
type mismatch: Arguments must be same type but were: ShortType != BooleanType; 
line 1 pos 27
+
+
+-- !query 23
+SELECT cast(1 as smallint) in (cast('2017-12-11 09:30:00.0' as timestamp)) 
FROM t
+-- !query 23 schema
+struct<>
+-- !query 23 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS SMALLINT) IN (CAST('2017-12-11 09:30:00.0' AS 
TIMESTAMP)))' due to data type mismatch: Arguments must be same type but were: 
ShortType != TimestampType; line 1 pos 27
+
+
+-- !query 24
+SELECT cast(1 as smallint) in (cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 24 schema
+struct<>
+-- !query 24 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS SMALLINT) IN (CAST('2017-12-11 09:30:00' AS 
DATE)))' due to data type mismatch: Arguments must be same type but were: 
ShortType != DateType; line 1 pos 27
+
+
+-- !query 25
+SELECT cast(1 as int) in (cast(1 as tinyint)) FROM t
+-- !query 25 schema
+struct<(CAST(CAST(1 AS INT) AS INT) IN (CAST(CAST(1 AS TINYINT) AS 
INT))):boolean>
+-- !query 25 output
+true
+
+
+-- !query 26
+SELECT cast(1 as int) in (cast(1 as smallint)) FROM t
+-- !query 26 schema
+struct<(CAST(CAST(1 AS INT) AS INT) IN (CAST(CAST(1 AS SMALLINT) AS 
INT))):boolean>
+-- !query 26 output
+true
+
+
+-- !query 27
+SELECT cast(1 as int) in (cast(1 as int)) FROM t
+-- !query 27 schema
+struct<(CAST(1 AS INT) IN (CAST(1 AS INT))):boolean>
+-- !query 27 output
+true
+
+
+-- !query 28
+SELECT cast(1 as int) in (cast(1 as bigint)) FROM t
+-- !query 28 schema
+struct<(CAST(CAST(1 AS INT) AS BIGINT) IN (CAST(CAST(1 AS BIGINT) AS 
BIGINT))):boolean>
+-- !query 28 output
+true
+
+
+-- !query 29
+SELECT cast(1 as int) in (cast(1 as float)) FROM t
+-- !query 29 schema
+struct<(CAST(CAST(1 AS INT) AS FLOAT) IN (CAST(CAST(1 AS FLOAT) AS 
FLOAT))):boolean>
+-- !query 29 output
+true
+
+
+-- !query 30
+SELECT cast(1 as int) in (cast(1 as double)) FROM t
+-- !query 30 schema
+struct<(CAST(CAST(1 AS INT) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE))):boolean>
+-- !query 30 output
+true
+
+
+-- !query 31
+SELECT cast(1 as int) in (cast(1 as decimal(10, 0))) FROM t
+-- !query 31 schema
+struct<(CAST(CAST(1 AS INT) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DECIMAL(10,0)))):boolean>
+-- !query 31 output
+true
+
+
+-- !query 32
+SELECT cast(1 as int) in (cast(1 as string)) FROM t
+-- !query 32 schema
+struct<(CAST(CAST(1 AS INT) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING))):boolean>
+-- !query 32 output
+true
+
+
+-- !query 33
+SELECT cast(1 as int) in (cast('1' as binary)) FROM t
+-- !query 33 schema
+struct<>
+-- !query 33 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS INT) IN (CAST('1' AS BINARY)))' due to data type 
mismatch: Arguments must be same type but were: IntegerType != BinaryType; line 
1 pos 22
+
+
+-- !query 34
+SELECT cast(1 as int) in (cast(1 as boolean)) FROM t
+-- !query 34 schema
+struct<>
+-- !query 34 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS INT) IN (CAST(1 AS BOOLEAN)))' due to data type 
mismatch: Arguments must be same type but were: IntegerType != BooleanType; 
line 1 pos 22
+
+
+-- !query 35
+SELECT cast(1 as int) in (cast('2017-12-11 09:30:00.0' as timestamp)) FROM t
+-- !query 35 schema
+struct<>
+-- !query 35 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS INT) IN (CAST('2017-12-11 09:30:00.0' AS 
TIMESTAMP)))' due to data type mismatch: Arguments must be same type but were: 
IntegerType != TimestampType; line 1 pos 22
+
+
+-- !query 36
+SELECT cast(1 as int) in (cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 36 schema
+struct<>
+-- !query 36 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS INT) IN (CAST('2017-12-11 09:30:00' AS DATE)))' due 
to data type mismatch: Arguments must be same type but were: IntegerType != 
DateType; line 1 pos 22
+
+
+-- !query 37
+SELECT cast(1 as bigint) in (cast(1 as tinyint)) FROM t
+-- !query 37 schema
+struct<(CAST(CAST(1 AS BIGINT) AS BIGINT) IN (CAST(CAST(1 AS TINYINT) AS 
BIGINT))):boolean>
+-- !query 37 output
+true
+
+
+-- !query 38
+SELECT cast(1 as bigint) in (cast(1 as smallint)) FROM t
+-- !query 38 schema
+struct<(CAST(CAST(1 AS BIGINT) AS BIGINT) IN (CAST(CAST(1 AS SMALLINT) AS 
BIGINT))):boolean>
+-- !query 38 output
+true
+
+
+-- !query 39
+SELECT cast(1 as bigint) in (cast(1 as int)) FROM t
+-- !query 39 schema
+struct<(CAST(CAST(1 AS BIGINT) AS BIGINT) IN (CAST(CAST(1 AS INT) AS 
BIGINT))):boolean>
+-- !query 39 output
+true
+
+
+-- !query 40
+SELECT cast(1 as bigint) in (cast(1 as bigint)) FROM t
+-- !query 40 schema
+struct<(CAST(1 AS BIGINT) IN (CAST(1 AS BIGINT))):boolean>
+-- !query 40 output
+true
+
+
+-- !query 41
+SELECT cast(1 as bigint) in (cast(1 as float)) FROM t
+-- !query 41 schema
+struct<(CAST(CAST(1 AS BIGINT) AS FLOAT) IN (CAST(CAST(1 AS FLOAT) AS 
FLOAT))):boolean>
+-- !query 41 output
+true
+
+
+-- !query 42
+SELECT cast(1 as bigint) in (cast(1 as double)) FROM t
+-- !query 42 schema
+struct<(CAST(CAST(1 AS BIGINT) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE))):boolean>
+-- !query 42 output
+true
+
+
+-- !query 43
+SELECT cast(1 as bigint) in (cast(1 as decimal(10, 0))) FROM t
+-- !query 43 schema
+struct<(CAST(CAST(1 AS BIGINT) AS DECIMAL(20,0)) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DECIMAL(20,0)))):boolean>
+-- !query 43 output
+true
+
+
+-- !query 44
+SELECT cast(1 as bigint) in (cast(1 as string)) FROM t
+-- !query 44 schema
+struct<(CAST(CAST(1 AS BIGINT) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING))):boolean>
+-- !query 44 output
+true
+
+
+-- !query 45
+SELECT cast(1 as bigint) in (cast('1' as binary)) FROM t
+-- !query 45 schema
+struct<>
+-- !query 45 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS BIGINT) IN (CAST('1' AS BINARY)))' due to data type 
mismatch: Arguments must be same type but were: LongType != BinaryType; line 1 
pos 25
+
+
+-- !query 46
+SELECT cast(1 as bigint) in (cast(1 as boolean)) FROM t
+-- !query 46 schema
+struct<>
+-- !query 46 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS BIGINT) IN (CAST(1 AS BOOLEAN)))' due to data type 
mismatch: Arguments must be same type but were: LongType != BooleanType; line 1 
pos 25
+
+
+-- !query 47
+SELECT cast(1 as bigint) in (cast('2017-12-11 09:30:00.0' as timestamp)) FROM t
+-- !query 47 schema
+struct<>
+-- !query 47 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS BIGINT) IN (CAST('2017-12-11 09:30:00.0' AS 
TIMESTAMP)))' due to data type mismatch: Arguments must be same type but were: 
LongType != TimestampType; line 1 pos 25
+
+
+-- !query 48
+SELECT cast(1 as bigint) in (cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 48 schema
+struct<>
+-- !query 48 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS BIGINT) IN (CAST('2017-12-11 09:30:00' AS DATE)))' 
due to data type mismatch: Arguments must be same type but were: LongType != 
DateType; line 1 pos 25
+
+
+-- !query 49
+SELECT cast(1 as float) in (cast(1 as tinyint)) FROM t
+-- !query 49 schema
+struct<(CAST(CAST(1 AS FLOAT) AS FLOAT) IN (CAST(CAST(1 AS TINYINT) AS 
FLOAT))):boolean>
+-- !query 49 output
+true
+
+
+-- !query 50
+SELECT cast(1 as float) in (cast(1 as smallint)) FROM t
+-- !query 50 schema
+struct<(CAST(CAST(1 AS FLOAT) AS FLOAT) IN (CAST(CAST(1 AS SMALLINT) AS 
FLOAT))):boolean>
+-- !query 50 output
+true
+
+
+-- !query 51
+SELECT cast(1 as float) in (cast(1 as int)) FROM t
+-- !query 51 schema
+struct<(CAST(CAST(1 AS FLOAT) AS FLOAT) IN (CAST(CAST(1 AS INT) AS 
FLOAT))):boolean>
+-- !query 51 output
+true
+
+
+-- !query 52
+SELECT cast(1 as float) in (cast(1 as bigint)) FROM t
+-- !query 52 schema
+struct<(CAST(CAST(1 AS FLOAT) AS FLOAT) IN (CAST(CAST(1 AS BIGINT) AS 
FLOAT))):boolean>
+-- !query 52 output
+true
+
+
+-- !query 53
+SELECT cast(1 as float) in (cast(1 as float)) FROM t
+-- !query 53 schema
+struct<(CAST(1 AS FLOAT) IN (CAST(1 AS FLOAT))):boolean>
+-- !query 53 output
+true
+
+
+-- !query 54
+SELECT cast(1 as float) in (cast(1 as double)) FROM t
+-- !query 54 schema
+struct<(CAST(CAST(1 AS FLOAT) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE))):boolean>
+-- !query 54 output
+true
+
+
+-- !query 55
+SELECT cast(1 as float) in (cast(1 as decimal(10, 0))) FROM t
+-- !query 55 schema
+struct<(CAST(CAST(1 AS FLOAT) AS DOUBLE) IN (CAST(CAST(1 AS DECIMAL(10,0)) AS 
DOUBLE))):boolean>
+-- !query 55 output
+true
+
+
+-- !query 56
+SELECT cast(1 as float) in (cast(1 as string)) FROM t
+-- !query 56 schema
+struct<(CAST(CAST(1 AS FLOAT) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING))):boolean>
+-- !query 56 output
+false
+
+
+-- !query 57
+SELECT cast(1 as float) in (cast('1' as binary)) FROM t
+-- !query 57 schema
+struct<>
+-- !query 57 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS FLOAT) IN (CAST('1' AS BINARY)))' due to data type 
mismatch: Arguments must be same type but were: FloatType != BinaryType; line 1 
pos 24
+
+
+-- !query 58
+SELECT cast(1 as float) in (cast(1 as boolean)) FROM t
+-- !query 58 schema
+struct<>
+-- !query 58 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS FLOAT) IN (CAST(1 AS BOOLEAN)))' due to data type 
mismatch: Arguments must be same type but were: FloatType != BooleanType; line 
1 pos 24
+
+
+-- !query 59
+SELECT cast(1 as float) in (cast('2017-12-11 09:30:00.0' as timestamp)) FROM t
+-- !query 59 schema
+struct<>
+-- !query 59 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS FLOAT) IN (CAST('2017-12-11 09:30:00.0' AS 
TIMESTAMP)))' due to data type mismatch: Arguments must be same type but were: 
FloatType != TimestampType; line 1 pos 24
+
+
+-- !query 60
+SELECT cast(1 as float) in (cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 60 schema
+struct<>
+-- !query 60 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS FLOAT) IN (CAST('2017-12-11 09:30:00' AS DATE)))' 
due to data type mismatch: Arguments must be same type but were: FloatType != 
DateType; line 1 pos 24
+
+
+-- !query 61
+SELECT cast(1 as double) in (cast(1 as tinyint)) FROM t
+-- !query 61 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS TINYINT) AS 
DOUBLE))):boolean>
+-- !query 61 output
+true
+
+
+-- !query 62
+SELECT cast(1 as double) in (cast(1 as smallint)) FROM t
+-- !query 62 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS SMALLINT) AS 
DOUBLE))):boolean>
+-- !query 62 output
+true
+
+
+-- !query 63
+SELECT cast(1 as double) in (cast(1 as int)) FROM t
+-- !query 63 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS INT) AS 
DOUBLE))):boolean>
+-- !query 63 output
+true
+
+
+-- !query 64
+SELECT cast(1 as double) in (cast(1 as bigint)) FROM t
+-- !query 64 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS BIGINT) AS 
DOUBLE))):boolean>
+-- !query 64 output
+true
+
+
+-- !query 65
+SELECT cast(1 as double) in (cast(1 as float)) FROM t
+-- !query 65 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS FLOAT) AS 
DOUBLE))):boolean>
+-- !query 65 output
+true
+
+
+-- !query 66
+SELECT cast(1 as double) in (cast(1 as double)) FROM t
+-- !query 66 schema
+struct<(CAST(1 AS DOUBLE) IN (CAST(1 AS DOUBLE))):boolean>
+-- !query 66 output
+true
+
+
+-- !query 67
+SELECT cast(1 as double) in (cast(1 as decimal(10, 0))) FROM t
+-- !query 67 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS DECIMAL(10,0)) AS 
DOUBLE))):boolean>
+-- !query 67 output
+true
+
+
+-- !query 68
+SELECT cast(1 as double) in (cast(1 as string)) FROM t
+-- !query 68 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING))):boolean>
+-- !query 68 output
+false
+
+
+-- !query 69
+SELECT cast(1 as double) in (cast('1' as binary)) FROM t
+-- !query 69 schema
+struct<>
+-- !query 69 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DOUBLE) IN (CAST('1' AS BINARY)))' due to data type 
mismatch: Arguments must be same type but were: DoubleType != BinaryType; line 
1 pos 25
+
+
+-- !query 70
+SELECT cast(1 as double) in (cast(1 as boolean)) FROM t
+-- !query 70 schema
+struct<>
+-- !query 70 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DOUBLE) IN (CAST(1 AS BOOLEAN)))' due to data type 
mismatch: Arguments must be same type but were: DoubleType != BooleanType; line 
1 pos 25
+
+
+-- !query 71
+SELECT cast(1 as double) in (cast('2017-12-11 09:30:00.0' as timestamp)) FROM t
+-- !query 71 schema
+struct<>
+-- !query 71 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DOUBLE) IN (CAST('2017-12-11 09:30:00.0' AS 
TIMESTAMP)))' due to data type mismatch: Arguments must be same type but were: 
DoubleType != TimestampType; line 1 pos 25
+
+
+-- !query 72
+SELECT cast(1 as double) in (cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 72 schema
+struct<>
+-- !query 72 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DOUBLE) IN (CAST('2017-12-11 09:30:00' AS DATE)))' 
due to data type mismatch: Arguments must be same type but were: DoubleType != 
DateType; line 1 pos 25
+
+
+-- !query 73
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as tinyint)) FROM t
+-- !query 73 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
TINYINT) AS DECIMAL(10,0)))):boolean>
+-- !query 73 output
+true
+
+
+-- !query 74
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as smallint)) FROM t
+-- !query 74 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
SMALLINT) AS DECIMAL(10,0)))):boolean>
+-- !query 74 output
+true
+
+
+-- !query 75
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as int)) FROM t
+-- !query 75 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
INT) AS DECIMAL(10,0)))):boolean>
+-- !query 75 output
+true
+
+
+-- !query 76
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as bigint)) FROM t
+-- !query 76 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(20,0)) IN (CAST(CAST(1 AS 
BIGINT) AS DECIMAL(20,0)))):boolean>
+-- !query 76 output
+true
+
+
+-- !query 77
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as float)) FROM t
+-- !query 77 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DOUBLE) IN (CAST(CAST(1 AS FLOAT) AS 
DOUBLE))):boolean>
+-- !query 77 output
+true
+
+
+-- !query 78
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as double)) FROM t
+-- !query 78 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE))):boolean>
+-- !query 78 output
+true
+
+
+-- !query 79
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0))) FROM t
+-- !query 79 schema
+struct<(CAST(1 AS DECIMAL(10,0)) IN (CAST(1 AS DECIMAL(10,0)))):boolean>
+-- !query 79 output
+true
+
+
+-- !query 80
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as string)) FROM t
+-- !query 80 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING))):boolean>
+-- !query 80 output
+true
+
+
+-- !query 81
+SELECT cast(1 as decimal(10, 0)) in (cast('1' as binary)) FROM t
+-- !query 81 schema
+struct<>
+-- !query 81 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DECIMAL(10,0)) IN (CAST('1' AS BINARY)))' due to 
data type mismatch: Arguments must be same type but were: DecimalType(10,0) != 
BinaryType; line 1 pos 33
+
+
+-- !query 82
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as boolean)) FROM t
+-- !query 82 schema
+struct<>
+-- !query 82 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DECIMAL(10,0)) IN (CAST(1 AS BOOLEAN)))' due to 
data type mismatch: Arguments must be same type but were: DecimalType(10,0) != 
BooleanType; line 1 pos 33
+
+
+-- !query 83
+SELECT cast(1 as decimal(10, 0)) in (cast('2017-12-11 09:30:00.0' as 
timestamp)) FROM t
+-- !query 83 schema
+struct<>
+-- !query 83 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DECIMAL(10,0)) IN (CAST('2017-12-11 09:30:00.0' AS 
TIMESTAMP)))' due to data type mismatch: Arguments must be same type but were: 
DecimalType(10,0) != TimestampType; line 1 pos 33
+
+
+-- !query 84
+SELECT cast(1 as decimal(10, 0)) in (cast('2017-12-11 09:30:00' as date)) FROM 
t
+-- !query 84 schema
+struct<>
+-- !query 84 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DECIMAL(10,0)) IN (CAST('2017-12-11 09:30:00' AS 
DATE)))' due to data type mismatch: Arguments must be same type but were: 
DecimalType(10,0) != DateType; line 1 pos 33
+
+
+-- !query 85
+SELECT cast(1 as string) in (cast(1 as tinyint)) FROM t
+-- !query 85 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS TINYINT) AS 
STRING))):boolean>
+-- !query 85 output
+true
+
+
+-- !query 86
+SELECT cast(1 as string) in (cast(1 as smallint)) FROM t
+-- !query 86 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS SMALLINT) AS 
STRING))):boolean>
+-- !query 86 output
+true
+
+
+-- !query 87
+SELECT cast(1 as string) in (cast(1 as int)) FROM t
+-- !query 87 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS INT) AS 
STRING))):boolean>
+-- !query 87 output
+true
+
+
+-- !query 88
+SELECT cast(1 as string) in (cast(1 as bigint)) FROM t
+-- !query 88 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS BIGINT) AS 
STRING))):boolean>
+-- !query 88 output
+true
+
+
+-- !query 89
+SELECT cast(1 as string) in (cast(1 as float)) FROM t
+-- !query 89 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS FLOAT) AS 
STRING))):boolean>
+-- !query 89 output
+false
+
+
+-- !query 90
+SELECT cast(1 as string) in (cast(1 as double)) FROM t
+-- !query 90 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS DOUBLE) AS 
STRING))):boolean>
+-- !query 90 output
+false
+
+
+-- !query 91
+SELECT cast(1 as string) in (cast(1 as decimal(10, 0))) FROM t
+-- !query 91 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS DECIMAL(10,0)) AS 
STRING))):boolean>
+-- !query 91 output
+true
+
+
+-- !query 92
+SELECT cast(1 as string) in (cast(1 as string)) FROM t
+-- !query 92 schema
+struct<(CAST(1 AS STRING) IN (CAST(1 AS STRING))):boolean>
+-- !query 92 output
+true
+
+
+-- !query 93
+SELECT cast(1 as string) in (cast('1' as binary)) FROM t
+-- !query 93 schema
+struct<>
+-- !query 93 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS STRING) IN (CAST('1' AS BINARY)))' due to data type 
mismatch: Arguments must be same type but were: StringType != BinaryType; line 
1 pos 25
+
+
+-- !query 94
+SELECT cast(1 as string) in (cast(1 as boolean)) FROM t
+-- !query 94 schema
+struct<>
+-- !query 94 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS STRING) IN (CAST(1 AS BOOLEAN)))' due to data type 
mismatch: Arguments must be same type but were: StringType != BooleanType; line 
1 pos 25
+
+
+-- !query 95
+SELECT cast(1 as string) in (cast('2017-12-11 09:30:00.0' as timestamp)) FROM t
+-- !query 95 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(2017-12-11 09:30:00.0 
AS TIMESTAMP) AS STRING))):boolean>
+-- !query 95 output
+false
+
+
+-- !query 96
+SELECT cast(1 as string) in (cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 96 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(2017-12-11 09:30:00 AS 
DATE) AS STRING))):boolean>
+-- !query 96 output
+false
+
+
+-- !query 97
+SELECT cast('1' as binary) in (cast(1 as tinyint)) FROM t
+-- !query 97 schema
+struct<>
+-- !query 97 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST(1 AS TINYINT)))' due to data 
type mismatch: Arguments must be same type but were: BinaryType != ByteType; 
line 1 pos 27
+
+
+-- !query 98
+SELECT cast('1' as binary) in (cast(1 as smallint)) FROM t
+-- !query 98 schema
+struct<>
+-- !query 98 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST(1 AS SMALLINT)))' due to data 
type mismatch: Arguments must be same type but were: BinaryType != ShortType; 
line 1 pos 27
+
+
+-- !query 99
+SELECT cast('1' as binary) in (cast(1 as int)) FROM t
+-- !query 99 schema
+struct<>
+-- !query 99 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST(1 AS INT)))' due to data type 
mismatch: Arguments must be same type but were: BinaryType != IntegerType; line 
1 pos 27
+
+
+-- !query 100
+SELECT cast('1' as binary) in (cast(1 as bigint)) FROM t
+-- !query 100 schema
+struct<>
+-- !query 100 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST(1 AS BIGINT)))' due to data type 
mismatch: Arguments must be same type but were: BinaryType != LongType; line 1 
pos 27
+
+
+-- !query 101
+SELECT cast('1' as binary) in (cast(1 as float)) FROM t
+-- !query 101 schema
+struct<>
+-- !query 101 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST(1 AS FLOAT)))' due to data type 
mismatch: Arguments must be same type but were: BinaryType != FloatType; line 1 
pos 27
+
+
+-- !query 102
+SELECT cast('1' as binary) in (cast(1 as double)) FROM t
+-- !query 102 schema
+struct<>
+-- !query 102 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST(1 AS DOUBLE)))' due to data type 
mismatch: Arguments must be same type but were: BinaryType != DoubleType; line 
1 pos 27
+
+
+-- !query 103
+SELECT cast('1' as binary) in (cast(1 as decimal(10, 0))) FROM t
+-- !query 103 schema
+struct<>
+-- !query 103 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST(1 AS DECIMAL(10,0))))' due to 
data type mismatch: Arguments must be same type but were: BinaryType != 
DecimalType(10,0); line 1 pos 27
+
+
+-- !query 104
+SELECT cast('1' as binary) in (cast(1 as string)) FROM t
+-- !query 104 schema
+struct<>
+-- !query 104 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST(1 AS STRING)))' due to data type 
mismatch: Arguments must be same type but were: BinaryType != StringType; line 
1 pos 27
+
+
+-- !query 105
+SELECT cast('1' as binary) in (cast('1' as binary)) FROM t
+-- !query 105 schema
+struct<(CAST(1 AS BINARY) IN (CAST(1 AS BINARY))):boolean>
+-- !query 105 output
+true
+
+
+-- !query 106
+SELECT cast('1' as binary) in (cast(1 as boolean)) FROM t
+-- !query 106 schema
+struct<>
+-- !query 106 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST(1 AS BOOLEAN)))' due to data 
type mismatch: Arguments must be same type but were: BinaryType != BooleanType; 
line 1 pos 27
+
+
+-- !query 107
+SELECT cast('1' as binary) in (cast('2017-12-11 09:30:00.0' as timestamp)) 
FROM t
+-- !query 107 schema
+struct<>
+-- !query 107 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('2017-12-11 09:30:00.0' AS 
TIMESTAMP)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != TimestampType; line 1 pos 27
+
+
+-- !query 108
+SELECT cast('1' as binary) in (cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 108 schema
+struct<>
+-- !query 108 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('2017-12-11 09:30:00' AS 
DATE)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != DateType; line 1 pos 27
+
+
+-- !query 109
+SELECT true in (cast(1 as tinyint)) FROM t
+-- !query 109 schema
+struct<>
+-- !query 109 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST(1 AS TINYINT)))' due to data type mismatch: 
Arguments must be same type but were: BooleanType != ByteType; line 1 pos 12
+
+
+-- !query 110
+SELECT true in (cast(1 as smallint)) FROM t
+-- !query 110 schema
+struct<>
+-- !query 110 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST(1 AS SMALLINT)))' due to data type mismatch: 
Arguments must be same type but were: BooleanType != ShortType; line 1 pos 12
+
+
+-- !query 111
+SELECT true in (cast(1 as int)) FROM t
+-- !query 111 schema
+struct<>
+-- !query 111 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST(1 AS INT)))' due to data type mismatch: 
Arguments must be same type but were: BooleanType != IntegerType; line 1 pos 12
+
+
+-- !query 112
+SELECT true in (cast(1 as bigint)) FROM t
+-- !query 112 schema
+struct<>
+-- !query 112 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST(1 AS BIGINT)))' due to data type mismatch: 
Arguments must be same type but were: BooleanType != LongType; line 1 pos 12
+
+
+-- !query 113
+SELECT true in (cast(1 as float)) FROM t
+-- !query 113 schema
+struct<>
+-- !query 113 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST(1 AS FLOAT)))' due to data type mismatch: 
Arguments must be same type but were: BooleanType != FloatType; line 1 pos 12
+
+
+-- !query 114
+SELECT true in (cast(1 as double)) FROM t
+-- !query 114 schema
+struct<>
+-- !query 114 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST(1 AS DOUBLE)))' due to data type mismatch: 
Arguments must be same type but were: BooleanType != DoubleType; line 1 pos 12
+
+
+-- !query 115
+SELECT true in (cast(1 as decimal(10, 0))) FROM t
+-- !query 115 schema
+struct<>
+-- !query 115 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST(1 AS DECIMAL(10,0))))' due to data type 
mismatch: Arguments must be same type but were: BooleanType != 
DecimalType(10,0); line 1 pos 12
+
+
+-- !query 116
+SELECT true in (cast(1 as string)) FROM t
+-- !query 116 schema
+struct<>
+-- !query 116 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST(1 AS STRING)))' due to data type mismatch: 
Arguments must be same type but were: BooleanType != StringType; line 1 pos 12
+
+
+-- !query 117
+SELECT true in (cast('1' as binary)) FROM t
+-- !query 117 schema
+struct<>
+-- !query 117 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST('1' AS BINARY)))' due to data type mismatch: 
Arguments must be same type but were: BooleanType != BinaryType; line 1 pos 12
+
+
+-- !query 118
+SELECT true in (cast(1 as boolean)) FROM t
+-- !query 118 schema
+struct<(true IN (CAST(1 AS BOOLEAN))):boolean>
+-- !query 118 output
+true
+
+
+-- !query 119
+SELECT true in (cast('2017-12-11 09:30:00.0' as timestamp)) FROM t
+-- !query 119 schema
+struct<>
+-- !query 119 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST('2017-12-11 09:30:00.0' AS TIMESTAMP)))' due to 
data type mismatch: Arguments must be same type but were: BooleanType != 
TimestampType; line 1 pos 12
+
+
+-- !query 120
+SELECT true in (cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 120 schema
+struct<>
+-- !query 120 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(true IN (CAST('2017-12-11 09:30:00' AS DATE)))' due to data 
type mismatch: Arguments must be same type but were: BooleanType != DateType; 
line 1 pos 12
+
+
+-- !query 121
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast(2 as tinyint)) FROM 
t
+-- !query 121 schema
+struct<>
+-- !query 121 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN (CAST(2 AS 
TINYINT)))' due to data type mismatch: Arguments must be same type but were: 
TimestampType != ByteType; line 1 pos 50
+
+
+-- !query 122
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast(2 as smallint)) 
FROM t
+-- !query 122 schema
+struct<>
+-- !query 122 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN (CAST(2 AS 
SMALLINT)))' due to data type mismatch: Arguments must be same type but were: 
TimestampType != ShortType; line 1 pos 50
+
+
+-- !query 123
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast(2 as int)) FROM t
+-- !query 123 schema
+struct<>
+-- !query 123 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN (CAST(2 AS 
INT)))' due to data type mismatch: Arguments must be same type but were: 
TimestampType != IntegerType; line 1 pos 50
+
+
+-- !query 124
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast(2 as bigint)) FROM t
+-- !query 124 schema
+struct<>
+-- !query 124 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN (CAST(2 AS 
BIGINT)))' due to data type mismatch: Arguments must be same type but were: 
TimestampType != LongType; line 1 pos 50
+
+
+-- !query 125
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast(2 as float)) FROM t
+-- !query 125 schema
+struct<>
+-- !query 125 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN (CAST(2 AS 
FLOAT)))' due to data type mismatch: Arguments must be same type but were: 
TimestampType != FloatType; line 1 pos 50
+
+
+-- !query 126
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast(2 as double)) FROM t
+-- !query 126 schema
+struct<>
+-- !query 126 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN (CAST(2 AS 
DOUBLE)))' due to data type mismatch: Arguments must be same type but were: 
TimestampType != DoubleType; line 1 pos 50
+
+
+-- !query 127
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast(2 as decimal(10, 
0))) FROM t
+-- !query 127 schema
+struct<>
+-- !query 127 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN (CAST(2 AS 
DECIMAL(10,0))))' due to data type mismatch: Arguments must be same type but 
were: TimestampType != DecimalType(10,0); line 1 pos 50
+
+
+-- !query 128
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast(2 as string)) FROM t
+-- !query 128 schema
+struct<(CAST(CAST(2017-12-12 09:30:00.0 AS TIMESTAMP) AS STRING) IN 
(CAST(CAST(2 AS STRING) AS STRING))):boolean>
+-- !query 128 output
+false
+
+
+-- !query 129
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2' as binary)) 
FROM t
+-- !query 129 schema
+struct<>
+-- !query 129 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN (CAST('2' AS 
BINARY)))' due to data type mismatch: Arguments must be same type but were: 
TimestampType != BinaryType; line 1 pos 50
+
+
+-- !query 130
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast(2 as boolean)) FROM 
t
+-- !query 130 schema
+struct<>
+-- !query 130 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN (CAST(2 AS 
BOOLEAN)))' due to data type mismatch: Arguments must be same type but were: 
TimestampType != BooleanType; line 1 pos 50
+
+
+-- !query 131
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-11 
09:30:00.0' as timestamp)) FROM t
+-- !query 131 schema
+struct<(CAST(2017-12-12 09:30:00.0 AS TIMESTAMP) IN (CAST(2017-12-11 
09:30:00.0 AS TIMESTAMP))):boolean>
+-- !query 131 output
+false
+
+
+-- !query 132
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-11 
09:30:00' as date)) FROM t
+-- !query 132 schema
+struct<(CAST(CAST(2017-12-12 09:30:00.0 AS TIMESTAMP) AS TIMESTAMP) IN 
(CAST(CAST(2017-12-11 09:30:00 AS DATE) AS TIMESTAMP))):boolean>
+-- !query 132 output
+false
+
+
+-- !query 133
+SELECT cast('2017-12-12 09:30:00' as date) in (cast(2 as tinyint)) FROM t
+-- !query 133 schema
+struct<>
+-- !query 133 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST(2 AS TINYINT)))' 
due to data type mismatch: Arguments must be same type but were: DateType != 
ByteType; line 1 pos 43
+
+
+-- !query 134
+SELECT cast('2017-12-12 09:30:00' as date) in (cast(2 as smallint)) FROM t
+-- !query 134 schema
+struct<>
+-- !query 134 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST(2 AS 
SMALLINT)))' due to data type mismatch: Arguments must be same type but were: 
DateType != ShortType; line 1 pos 43
+
+
+-- !query 135
+SELECT cast('2017-12-12 09:30:00' as date) in (cast(2 as int)) FROM t
+-- !query 135 schema
+struct<>
+-- !query 135 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST(2 AS INT)))' due 
to data type mismatch: Arguments must be same type but were: DateType != 
IntegerType; line 1 pos 43
+
+
+-- !query 136
+SELECT cast('2017-12-12 09:30:00' as date) in (cast(2 as bigint)) FROM t
+-- !query 136 schema
+struct<>
+-- !query 136 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST(2 AS BIGINT)))' 
due to data type mismatch: Arguments must be same type but were: DateType != 
LongType; line 1 pos 43
+
+
+-- !query 137
+SELECT cast('2017-12-12 09:30:00' as date) in (cast(2 as float)) FROM t
+-- !query 137 schema
+struct<>
+-- !query 137 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST(2 AS FLOAT)))' 
due to data type mismatch: Arguments must be same type but were: DateType != 
FloatType; line 1 pos 43
+
+
+-- !query 138
+SELECT cast('2017-12-12 09:30:00' as date) in (cast(2 as double)) FROM t
+-- !query 138 schema
+struct<>
+-- !query 138 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST(2 AS DOUBLE)))' 
due to data type mismatch: Arguments must be same type but were: DateType != 
DoubleType; line 1 pos 43
+
+
+-- !query 139
+SELECT cast('2017-12-12 09:30:00' as date) in (cast(2 as decimal(10, 0))) FROM 
t
+-- !query 139 schema
+struct<>
+-- !query 139 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST(2 AS 
DECIMAL(10,0))))' due to data type mismatch: Arguments must be same type but 
were: DateType != DecimalType(10,0); line 1 pos 43
+
+
+-- !query 140
+SELECT cast('2017-12-12 09:30:00' as date) in (cast(2 as string)) FROM t
+-- !query 140 schema
+struct<(CAST(CAST(2017-12-12 09:30:00 AS DATE) AS STRING) IN (CAST(CAST(2 AS 
STRING) AS STRING))):boolean>
+-- !query 140 output
+false
+
+
+-- !query 141
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2' as binary)) FROM t
+-- !query 141 schema
+struct<>
+-- !query 141 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST('2' AS 
BINARY)))' due to data type mismatch: Arguments must be same type but were: 
DateType != BinaryType; line 1 pos 43
+
+
+-- !query 142
+SELECT cast('2017-12-12 09:30:00' as date) in (cast(2 as boolean)) FROM t
+-- !query 142 schema
+struct<>
+-- !query 142 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST(2 AS BOOLEAN)))' 
due to data type mismatch: Arguments must be same type but were: DateType != 
BooleanType; line 1 pos 43
+
+
+-- !query 143
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2017-12-11 09:30:00.0' as 
timestamp)) FROM t
+-- !query 143 schema
+struct<(CAST(CAST(2017-12-12 09:30:00 AS DATE) AS TIMESTAMP) IN 
(CAST(CAST(2017-12-11 09:30:00.0 AS TIMESTAMP) AS TIMESTAMP))):boolean>
+-- !query 143 output
+false
+
+
+-- !query 144
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2017-12-11 09:30:00' as 
date)) FROM t
+-- !query 144 schema
+struct<(CAST(2017-12-12 09:30:00 AS DATE) IN (CAST(2017-12-11 09:30:00 AS 
DATE))):boolean>
+-- !query 144 output
+false
+
+
+-- !query 145
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast(1 as tinyint)) FROM t
+-- !query 145 schema
+struct<(CAST(1 AS TINYINT) IN (CAST(1 AS TINYINT), CAST(1 AS 
TINYINT))):boolean>
+-- !query 145 output
+true
+
+
+-- !query 146
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast(1 as smallint)) FROM t
+-- !query 146 schema
+struct<(CAST(CAST(1 AS TINYINT) AS SMALLINT) IN (CAST(CAST(1 AS TINYINT) AS 
SMALLINT), CAST(CAST(1 AS SMALLINT) AS SMALLINT))):boolean>
+-- !query 146 output
+true
+
+
+-- !query 147
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast(1 as int)) FROM t
+-- !query 147 schema
+struct<(CAST(CAST(1 AS TINYINT) AS INT) IN (CAST(CAST(1 AS TINYINT) AS INT), 
CAST(CAST(1 AS INT) AS INT))):boolean>
+-- !query 147 output
+true
+
+
+-- !query 148
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast(1 as bigint)) FROM t
+-- !query 148 schema
+struct<(CAST(CAST(1 AS TINYINT) AS BIGINT) IN (CAST(CAST(1 AS TINYINT) AS 
BIGINT), CAST(CAST(1 AS BIGINT) AS BIGINT))):boolean>
+-- !query 148 output
+true
+
+
+-- !query 149
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast(1 as float)) FROM t
+-- !query 149 schema
+struct<(CAST(CAST(1 AS TINYINT) AS FLOAT) IN (CAST(CAST(1 AS TINYINT) AS 
FLOAT), CAST(CAST(1 AS FLOAT) AS FLOAT))):boolean>
+-- !query 149 output
+true
+
+
+-- !query 150
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast(1 as double)) FROM t
+-- !query 150 schema
+struct<(CAST(CAST(1 AS TINYINT) AS DOUBLE) IN (CAST(CAST(1 AS TINYINT) AS 
DOUBLE), CAST(CAST(1 AS DOUBLE) AS DOUBLE))):boolean>
+-- !query 150 output
+true
+
+
+-- !query 151
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast(1 as decimal(10, 0))) 
FROM t
+-- !query 151 schema
+struct<(CAST(CAST(1 AS TINYINT) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS TINYINT) 
AS DECIMAL(10,0)), CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(10,0)))):boolean>
+-- !query 151 output
+true
+
+
+-- !query 152
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast(1 as string)) FROM t
+-- !query 152 schema
+struct<(CAST(CAST(1 AS TINYINT) AS STRING) IN (CAST(CAST(1 AS TINYINT) AS 
STRING), CAST(CAST(1 AS STRING) AS STRING))):boolean>
+-- !query 152 output
+true
+
+
+-- !query 153
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast('1' as binary)) FROM t
+-- !query 153 schema
+struct<>
+-- !query 153 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS TINYINT) IN (CAST(1 AS TINYINT), CAST('1' AS 
BINARY)))' due to data type mismatch: Arguments must be same type but were: 
ByteType != BinaryType; line 1 pos 26
+
+
+-- !query 154
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast(1 as boolean)) FROM t
+-- !query 154 schema
+struct<>
+-- !query 154 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS TINYINT) IN (CAST(1 AS TINYINT), CAST(1 AS 
BOOLEAN)))' due to data type mismatch: Arguments must be same type but were: 
ByteType != BooleanType; line 1 pos 26
+
+
+-- !query 155
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast('2017-12-11 09:30:00.0' 
as timestamp)) FROM t
+-- !query 155 schema
+struct<>
+-- !query 155 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS TINYINT) IN (CAST(1 AS TINYINT), CAST('2017-12-11 
09:30:00.0' AS TIMESTAMP)))' due to data type mismatch: Arguments must be same 
type but were: ByteType != TimestampType; line 1 pos 26
+
+
+-- !query 156
+SELECT cast(1 as tinyint) in (cast(1 as tinyint), cast('2017-12-11 09:30:00' 
as date)) FROM t
+-- !query 156 schema
+struct<>
+-- !query 156 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS TINYINT) IN (CAST(1 AS TINYINT), CAST('2017-12-11 
09:30:00' AS DATE)))' due to data type mismatch: Arguments must be same type 
but were: ByteType != DateType; line 1 pos 26
+
+
+-- !query 157
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast(1 as tinyint)) FROM t
+-- !query 157 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS SMALLINT) IN (CAST(CAST(1 AS SMALLINT) AS 
SMALLINT), CAST(CAST(1 AS TINYINT) AS SMALLINT))):boolean>
+-- !query 157 output
+true
+
+
+-- !query 158
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast(1 as smallint)) FROM t
+-- !query 158 schema
+struct<(CAST(1 AS SMALLINT) IN (CAST(1 AS SMALLINT), CAST(1 AS 
SMALLINT))):boolean>
+-- !query 158 output
+true
+
+
+-- !query 159
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast(1 as int)) FROM t
+-- !query 159 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS INT) IN (CAST(CAST(1 AS SMALLINT) AS INT), 
CAST(CAST(1 AS INT) AS INT))):boolean>
+-- !query 159 output
+true
+
+
+-- !query 160
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast(1 as bigint)) FROM t
+-- !query 160 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS BIGINT) IN (CAST(CAST(1 AS SMALLINT) AS 
BIGINT), CAST(CAST(1 AS BIGINT) AS BIGINT))):boolean>
+-- !query 160 output
+true
+
+
+-- !query 161
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast(1 as float)) FROM t
+-- !query 161 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS FLOAT) IN (CAST(CAST(1 AS SMALLINT) AS 
FLOAT), CAST(CAST(1 AS FLOAT) AS FLOAT))):boolean>
+-- !query 161 output
+true
+
+
+-- !query 162
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast(1 as double)) FROM t
+-- !query 162 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS DOUBLE) IN (CAST(CAST(1 AS SMALLINT) AS 
DOUBLE), CAST(CAST(1 AS DOUBLE) AS DOUBLE))):boolean>
+-- !query 162 output
+true
+
+
+-- !query 163
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast(1 as decimal(10, 0))) 
FROM t
+-- !query 163 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
SMALLINT) AS DECIMAL(10,0)), CAST(CAST(1 AS DECIMAL(10,0)) AS 
DECIMAL(10,0)))):boolean>
+-- !query 163 output
+true
+
+
+-- !query 164
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast(1 as string)) FROM t
+-- !query 164 schema
+struct<(CAST(CAST(1 AS SMALLINT) AS STRING) IN (CAST(CAST(1 AS SMALLINT) AS 
STRING), CAST(CAST(1 AS STRING) AS STRING))):boolean>
+-- !query 164 output
+true
+
+
+-- !query 165
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast('1' as binary)) FROM t
+-- !query 165 schema
+struct<>
+-- !query 165 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS SMALLINT) IN (CAST(1 AS SMALLINT), CAST('1' AS 
BINARY)))' due to data type mismatch: Arguments must be same type but were: 
ShortType != BinaryType; line 1 pos 27
+
+
+-- !query 166
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast(1 as boolean)) FROM t
+-- !query 166 schema
+struct<>
+-- !query 166 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS SMALLINT) IN (CAST(1 AS SMALLINT), CAST(1 AS 
BOOLEAN)))' due to data type mismatch: Arguments must be same type but were: 
ShortType != BooleanType; line 1 pos 27
+
+
+-- !query 167
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast('2017-12-11 
09:30:00.0' as timestamp)) FROM t
+-- !query 167 schema
+struct<>
+-- !query 167 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS SMALLINT) IN (CAST(1 AS SMALLINT), CAST('2017-12-11 
09:30:00.0' AS TIMESTAMP)))' due to data type mismatch: Arguments must be same 
type but were: ShortType != TimestampType; line 1 pos 27
+
+
+-- !query 168
+SELECT cast(1 as smallint) in (cast(1 as smallint), cast('2017-12-11 09:30:00' 
as date)) FROM t
+-- !query 168 schema
+struct<>
+-- !query 168 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS SMALLINT) IN (CAST(1 AS SMALLINT), CAST('2017-12-11 
09:30:00' AS DATE)))' due to data type mismatch: Arguments must be same type 
but were: ShortType != DateType; line 1 pos 27
+
+
+-- !query 169
+SELECT cast(1 as int) in (cast(1 as int), cast(1 as tinyint)) FROM t
+-- !query 169 schema
+struct<(CAST(CAST(1 AS INT) AS INT) IN (CAST(CAST(1 AS INT) AS INT), 
CAST(CAST(1 AS TINYINT) AS INT))):boolean>
+-- !query 169 output
+true
+
+
+-- !query 170
+SELECT cast(1 as int) in (cast(1 as int), cast(1 as smallint)) FROM t
+-- !query 170 schema
+struct<(CAST(CAST(1 AS INT) AS INT) IN (CAST(CAST(1 AS INT) AS INT), 
CAST(CAST(1 AS SMALLINT) AS INT))):boolean>
+-- !query 170 output
+true
+
+
+-- !query 171
+SELECT cast(1 as int) in (cast(1 as int), cast(1 as int)) FROM t
+-- !query 171 schema
+struct<(CAST(1 AS INT) IN (CAST(1 AS INT), CAST(1 AS INT))):boolean>
+-- !query 171 output
+true
+
+
+-- !query 172
+SELECT cast(1 as int) in (cast(1 as int), cast(1 as bigint)) FROM t
+-- !query 172 schema
+struct<(CAST(CAST(1 AS INT) AS BIGINT) IN (CAST(CAST(1 AS INT) AS BIGINT), 
CAST(CAST(1 AS BIGINT) AS BIGINT))):boolean>
+-- !query 172 output
+true
+
+
+-- !query 173
+SELECT cast(1 as int) in (cast(1 as int), cast(1 as float)) FROM t
+-- !query 173 schema
+struct<(CAST(CAST(1 AS INT) AS FLOAT) IN (CAST(CAST(1 AS INT) AS FLOAT), 
CAST(CAST(1 AS FLOAT) AS FLOAT))):boolean>
+-- !query 173 output
+true
+
+
+-- !query 174
+SELECT cast(1 as int) in (cast(1 as int), cast(1 as double)) FROM t
+-- !query 174 schema
+struct<(CAST(CAST(1 AS INT) AS DOUBLE) IN (CAST(CAST(1 AS INT) AS DOUBLE), 
CAST(CAST(1 AS DOUBLE) AS DOUBLE))):boolean>
+-- !query 174 output
+true
+
+
+-- !query 175
+SELECT cast(1 as int) in (cast(1 as int), cast(1 as decimal(10, 0))) FROM t
+-- !query 175 schema
+struct<(CAST(CAST(1 AS INT) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS INT) AS 
DECIMAL(10,0)), CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(10,0)))):boolean>
+-- !query 175 output
+true
+
+
+-- !query 176
+SELECT cast(1 as int) in (cast(1 as int), cast(1 as string)) FROM t
+-- !query 176 schema
+struct<(CAST(CAST(1 AS INT) AS STRING) IN (CAST(CAST(1 AS INT) AS STRING), 
CAST(CAST(1 AS STRING) AS STRING))):boolean>
+-- !query 176 output
+true
+
+
+-- !query 177
+SELECT cast(1 as int) in (cast(1 as int), cast('1' as binary)) FROM t
+-- !query 177 schema
+struct<>
+-- !query 177 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS INT) IN (CAST(1 AS INT), CAST('1' AS BINARY)))' due 
to data type mismatch: Arguments must be same type but were: IntegerType != 
BinaryType; line 1 pos 22
+
+
+-- !query 178
+SELECT cast(1 as int) in (cast(1 as int), cast(1 as boolean)) FROM t
+-- !query 178 schema
+struct<>
+-- !query 178 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS INT) IN (CAST(1 AS INT), CAST(1 AS BOOLEAN)))' due 
to data type mismatch: Arguments must be same type but were: IntegerType != 
BooleanType; line 1 pos 22
+
+
+-- !query 179
+SELECT cast(1 as int) in (cast(1 as int), cast('2017-12-11 09:30:00.0' as 
timestamp)) FROM t
+-- !query 179 schema
+struct<>
+-- !query 179 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS INT) IN (CAST(1 AS INT), CAST('2017-12-11 
09:30:00.0' AS TIMESTAMP)))' due to data type mismatch: Arguments must be same 
type but were: IntegerType != TimestampType; line 1 pos 22
+
+
+-- !query 180
+SELECT cast(1 as int) in (cast(1 as int), cast('2017-12-11 09:30:00' as date)) 
FROM t
+-- !query 180 schema
+struct<>
+-- !query 180 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS INT) IN (CAST(1 AS INT), CAST('2017-12-11 09:30:00' 
AS DATE)))' due to data type mismatch: Arguments must be same type but were: 
IntegerType != DateType; line 1 pos 22
+
+
+-- !query 181
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast(1 as tinyint)) FROM t
+-- !query 181 schema
+struct<(CAST(CAST(1 AS BIGINT) AS BIGINT) IN (CAST(CAST(1 AS BIGINT) AS 
BIGINT), CAST(CAST(1 AS TINYINT) AS BIGINT))):boolean>
+-- !query 181 output
+true
+
+
+-- !query 182
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast(1 as smallint)) FROM t
+-- !query 182 schema
+struct<(CAST(CAST(1 AS BIGINT) AS BIGINT) IN (CAST(CAST(1 AS BIGINT) AS 
BIGINT), CAST(CAST(1 AS SMALLINT) AS BIGINT))):boolean>
+-- !query 182 output
+true
+
+
+-- !query 183
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast(1 as int)) FROM t
+-- !query 183 schema
+struct<(CAST(CAST(1 AS BIGINT) AS BIGINT) IN (CAST(CAST(1 AS BIGINT) AS 
BIGINT), CAST(CAST(1 AS INT) AS BIGINT))):boolean>
+-- !query 183 output
+true
+
+
+-- !query 184
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast(1 as bigint)) FROM t
+-- !query 184 schema
+struct<(CAST(1 AS BIGINT) IN (CAST(1 AS BIGINT), CAST(1 AS BIGINT))):boolean>
+-- !query 184 output
+true
+
+
+-- !query 185
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast(1 as float)) FROM t
+-- !query 185 schema
+struct<(CAST(CAST(1 AS BIGINT) AS FLOAT) IN (CAST(CAST(1 AS BIGINT) AS FLOAT), 
CAST(CAST(1 AS FLOAT) AS FLOAT))):boolean>
+-- !query 185 output
+true
+
+
+-- !query 186
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast(1 as double)) FROM t
+-- !query 186 schema
+struct<(CAST(CAST(1 AS BIGINT) AS DOUBLE) IN (CAST(CAST(1 AS BIGINT) AS 
DOUBLE), CAST(CAST(1 AS DOUBLE) AS DOUBLE))):boolean>
+-- !query 186 output
+true
+
+
+-- !query 187
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast(1 as decimal(10, 0))) 
FROM t
+-- !query 187 schema
+struct<(CAST(CAST(1 AS BIGINT) AS DECIMAL(20,0)) IN (CAST(CAST(1 AS BIGINT) AS 
DECIMAL(20,0)), CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(20,0)))):boolean>
+-- !query 187 output
+true
+
+
+-- !query 188
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast(1 as string)) FROM t
+-- !query 188 schema
+struct<(CAST(CAST(1 AS BIGINT) AS STRING) IN (CAST(CAST(1 AS BIGINT) AS 
STRING), CAST(CAST(1 AS STRING) AS STRING))):boolean>
+-- !query 188 output
+true
+
+
+-- !query 189
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast('1' as binary)) FROM t
+-- !query 189 schema
+struct<>
+-- !query 189 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS BIGINT) IN (CAST(1 AS BIGINT), CAST('1' AS 
BINARY)))' due to data type mismatch: Arguments must be same type but were: 
LongType != BinaryType; line 1 pos 25
+
+
+-- !query 190
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast(1 as boolean)) FROM t
+-- !query 190 schema
+struct<>
+-- !query 190 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS BIGINT) IN (CAST(1 AS BIGINT), CAST(1 AS 
BOOLEAN)))' due to data type mismatch: Arguments must be same type but were: 
LongType != BooleanType; line 1 pos 25
+
+
+-- !query 191
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast('2017-12-11 09:30:00.0' 
as timestamp)) FROM t
+-- !query 191 schema
+struct<>
+-- !query 191 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS BIGINT) IN (CAST(1 AS BIGINT), CAST('2017-12-11 
09:30:00.0' AS TIMESTAMP)))' due to data type mismatch: Arguments must be same 
type but were: LongType != TimestampType; line 1 pos 25
+
+
+-- !query 192
+SELECT cast(1 as bigint) in (cast(1 as bigint), cast('2017-12-11 09:30:00' as 
date)) FROM t
+-- !query 192 schema
+struct<>
+-- !query 192 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS BIGINT) IN (CAST(1 AS BIGINT), CAST('2017-12-11 
09:30:00' AS DATE)))' due to data type mismatch: Arguments must be same type 
but were: LongType != DateType; line 1 pos 25
+
+
+-- !query 193
+SELECT cast(1 as float) in (cast(1 as float), cast(1 as tinyint)) FROM t
+-- !query 193 schema
+struct<(CAST(CAST(1 AS FLOAT) AS FLOAT) IN (CAST(CAST(1 AS FLOAT) AS FLOAT), 
CAST(CAST(1 AS TINYINT) AS FLOAT))):boolean>
+-- !query 193 output
+true
+
+
+-- !query 194
+SELECT cast(1 as float) in (cast(1 as float), cast(1 as smallint)) FROM t
+-- !query 194 schema
+struct<(CAST(CAST(1 AS FLOAT) AS FLOAT) IN (CAST(CAST(1 AS FLOAT) AS FLOAT), 
CAST(CAST(1 AS SMALLINT) AS FLOAT))):boolean>
+-- !query 194 output
+true
+
+
+-- !query 195
+SELECT cast(1 as float) in (cast(1 as float), cast(1 as int)) FROM t
+-- !query 195 schema
+struct<(CAST(CAST(1 AS FLOAT) AS FLOAT) IN (CAST(CAST(1 AS FLOAT) AS FLOAT), 
CAST(CAST(1 AS INT) AS FLOAT))):boolean>
+-- !query 195 output
+true
+
+
+-- !query 196
+SELECT cast(1 as float) in (cast(1 as float), cast(1 as bigint)) FROM t
+-- !query 196 schema
+struct<(CAST(CAST(1 AS FLOAT) AS FLOAT) IN (CAST(CAST(1 AS FLOAT) AS FLOAT), 
CAST(CAST(1 AS BIGINT) AS FLOAT))):boolean>
+-- !query 196 output
+true
+
+
+-- !query 197
+SELECT cast(1 as float) in (cast(1 as float), cast(1 as float)) FROM t
+-- !query 197 schema
+struct<(CAST(1 AS FLOAT) IN (CAST(1 AS FLOAT), CAST(1 AS FLOAT))):boolean>
+-- !query 197 output
+true
+
+
+-- !query 198
+SELECT cast(1 as float) in (cast(1 as float), cast(1 as double)) FROM t
+-- !query 198 schema
+struct<(CAST(CAST(1 AS FLOAT) AS DOUBLE) IN (CAST(CAST(1 AS FLOAT) AS DOUBLE), 
CAST(CAST(1 AS DOUBLE) AS DOUBLE))):boolean>
+-- !query 198 output
+true
+
+
+-- !query 199
+SELECT cast(1 as float) in (cast(1 as float), cast(1 as decimal(10, 0))) FROM t
+-- !query 199 schema
+struct<(CAST(CAST(1 AS FLOAT) AS DOUBLE) IN (CAST(CAST(1 AS FLOAT) AS DOUBLE), 
CAST(CAST(1 AS DECIMAL(10,0)) AS DOUBLE))):boolean>
+-- !query 199 output
+true
+
+
+-- !query 200
+SELECT cast(1 as float) in (cast(1 as float), cast(1 as string)) FROM t
+-- !query 200 schema
+struct<(CAST(CAST(1 AS FLOAT) AS STRING) IN (CAST(CAST(1 AS FLOAT) AS STRING), 
CAST(CAST(1 AS STRING) AS STRING))):boolean>
+-- !query 200 output
+true
+
+
+-- !query 201
+SELECT cast(1 as float) in (cast(1 as float), cast('1' as binary)) FROM t
+-- !query 201 schema
+struct<>
+-- !query 201 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS FLOAT) IN (CAST(1 AS FLOAT), CAST('1' AS BINARY)))' 
due to data type mismatch: Arguments must be same type but were: FloatType != 
BinaryType; line 1 pos 24
+
+
+-- !query 202
+SELECT cast(1 as float) in (cast(1 as float), cast(1 as boolean)) FROM t
+-- !query 202 schema
+struct<>
+-- !query 202 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS FLOAT) IN (CAST(1 AS FLOAT), CAST(1 AS BOOLEAN)))' 
due to data type mismatch: Arguments must be same type but were: FloatType != 
BooleanType; line 1 pos 24
+
+
+-- !query 203
+SELECT cast(1 as float) in (cast(1 as float), cast('2017-12-11 09:30:00.0' as 
timestamp)) FROM t
+-- !query 203 schema
+struct<>
+-- !query 203 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS FLOAT) IN (CAST(1 AS FLOAT), CAST('2017-12-11 
09:30:00.0' AS TIMESTAMP)))' due to data type mismatch: Arguments must be same 
type but were: FloatType != TimestampType; line 1 pos 24
+
+
+-- !query 204
+SELECT cast(1 as float) in (cast(1 as float), cast('2017-12-11 09:30:00' as 
date)) FROM t
+-- !query 204 schema
+struct<>
+-- !query 204 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS FLOAT) IN (CAST(1 AS FLOAT), CAST('2017-12-11 
09:30:00' AS DATE)))' due to data type mismatch: Arguments must be same type 
but were: FloatType != DateType; line 1 pos 24
+
+
+-- !query 205
+SELECT cast(1 as double) in (cast(1 as double), cast(1 as tinyint)) FROM t
+-- !query 205 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE), CAST(CAST(1 AS TINYINT) AS DOUBLE))):boolean>
+-- !query 205 output
+true
+
+
+-- !query 206
+SELECT cast(1 as double) in (cast(1 as double), cast(1 as smallint)) FROM t
+-- !query 206 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE), CAST(CAST(1 AS SMALLINT) AS DOUBLE))):boolean>
+-- !query 206 output
+true
+
+
+-- !query 207
+SELECT cast(1 as double) in (cast(1 as double), cast(1 as int)) FROM t
+-- !query 207 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE), CAST(CAST(1 AS INT) AS DOUBLE))):boolean>
+-- !query 207 output
+true
+
+
+-- !query 208
+SELECT cast(1 as double) in (cast(1 as double), cast(1 as bigint)) FROM t
+-- !query 208 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE), CAST(CAST(1 AS BIGINT) AS DOUBLE))):boolean>
+-- !query 208 output
+true
+
+
+-- !query 209
+SELECT cast(1 as double) in (cast(1 as double), cast(1 as float)) FROM t
+-- !query 209 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE), CAST(CAST(1 AS FLOAT) AS DOUBLE))):boolean>
+-- !query 209 output
+true
+
+
+-- !query 210
+SELECT cast(1 as double) in (cast(1 as double), cast(1 as double)) FROM t
+-- !query 210 schema
+struct<(CAST(1 AS DOUBLE) IN (CAST(1 AS DOUBLE), CAST(1 AS DOUBLE))):boolean>
+-- !query 210 output
+true
+
+
+-- !query 211
+SELECT cast(1 as double) in (cast(1 as double), cast(1 as decimal(10, 0))) 
FROM t
+-- !query 211 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS DOUBLE) IN (CAST(CAST(1 AS DOUBLE) AS 
DOUBLE), CAST(CAST(1 AS DECIMAL(10,0)) AS DOUBLE))):boolean>
+-- !query 211 output
+true
+
+
+-- !query 212
+SELECT cast(1 as double) in (cast(1 as double), cast(1 as string)) FROM t
+-- !query 212 schema
+struct<(CAST(CAST(1 AS DOUBLE) AS STRING) IN (CAST(CAST(1 AS DOUBLE) AS 
STRING), CAST(CAST(1 AS STRING) AS STRING))):boolean>
+-- !query 212 output
+true
+
+
+-- !query 213
+SELECT cast(1 as double) in (cast(1 as double), cast('1' as binary)) FROM t
+-- !query 213 schema
+struct<>
+-- !query 213 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DOUBLE) IN (CAST(1 AS DOUBLE), CAST('1' AS 
BINARY)))' due to data type mismatch: Arguments must be same type but were: 
DoubleType != BinaryType; line 1 pos 25
+
+
+-- !query 214
+SELECT cast(1 as double) in (cast(1 as double), cast(1 as boolean)) FROM t
+-- !query 214 schema
+struct<>
+-- !query 214 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DOUBLE) IN (CAST(1 AS DOUBLE), CAST(1 AS 
BOOLEAN)))' due to data type mismatch: Arguments must be same type but were: 
DoubleType != BooleanType; line 1 pos 25
+
+
+-- !query 215
+SELECT cast(1 as double) in (cast(1 as double), cast('2017-12-11 09:30:00.0' 
as timestamp)) FROM t
+-- !query 215 schema
+struct<>
+-- !query 215 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DOUBLE) IN (CAST(1 AS DOUBLE), CAST('2017-12-11 
09:30:00.0' AS TIMESTAMP)))' due to data type mismatch: Arguments must be same 
type but were: DoubleType != TimestampType; line 1 pos 25
+
+
+-- !query 216
+SELECT cast(1 as double) in (cast(1 as double), cast('2017-12-11 09:30:00' as 
date)) FROM t
+-- !query 216 schema
+struct<>
+-- !query 216 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DOUBLE) IN (CAST(1 AS DOUBLE), CAST('2017-12-11 
09:30:00' AS DATE)))' due to data type mismatch: Arguments must be same type 
but were: DoubleType != DateType; line 1 pos 25
+
+
+-- !query 217
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast(1 as 
tinyint)) FROM t
+-- !query 217 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DECIMAL(10,0)), CAST(CAST(1 AS TINYINT) AS 
DECIMAL(10,0)))):boolean>
+-- !query 217 output
+true
+
+
+-- !query 218
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast(1 as 
smallint)) FROM t
+-- !query 218 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DECIMAL(10,0)), CAST(CAST(1 AS SMALLINT) AS 
DECIMAL(10,0)))):boolean>
+-- !query 218 output
+true
+
+
+-- !query 219
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast(1 as 
int)) FROM t
+-- !query 219 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(10,0)) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DECIMAL(10,0)), CAST(CAST(1 AS INT) AS 
DECIMAL(10,0)))):boolean>
+-- !query 219 output
+true
+
+
+-- !query 220
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast(1 as 
bigint)) FROM t
+-- !query 220 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DECIMAL(20,0)) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DECIMAL(20,0)), CAST(CAST(1 AS BIGINT) AS 
DECIMAL(20,0)))):boolean>
+-- !query 220 output
+true
+
+
+-- !query 221
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast(1 as 
float)) FROM t
+-- !query 221 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DOUBLE) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DOUBLE), CAST(CAST(1 AS FLOAT) AS DOUBLE))):boolean>
+-- !query 221 output
+true
+
+
+-- !query 222
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast(1 as 
double)) FROM t
+-- !query 222 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS DOUBLE) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS DOUBLE), CAST(CAST(1 AS DOUBLE) AS DOUBLE))):boolean>
+-- !query 222 output
+true
+
+
+-- !query 223
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast(1 as 
decimal(10, 0))) FROM t
+-- !query 223 schema
+struct<(CAST(1 AS DECIMAL(10,0)) IN (CAST(1 AS DECIMAL(10,0)), CAST(1 AS 
DECIMAL(10,0)))):boolean>
+-- !query 223 output
+true
+
+
+-- !query 224
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast(1 as 
string)) FROM t
+-- !query 224 schema
+struct<(CAST(CAST(1 AS DECIMAL(10,0)) AS STRING) IN (CAST(CAST(1 AS 
DECIMAL(10,0)) AS STRING), CAST(CAST(1 AS STRING) AS STRING))):boolean>
+-- !query 224 output
+true
+
+
+-- !query 225
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast('1' as 
binary)) FROM t
+-- !query 225 schema
+struct<>
+-- !query 225 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DECIMAL(10,0)) IN (CAST(1 AS DECIMAL(10,0)), 
CAST('1' AS BINARY)))' due to data type mismatch: Arguments must be same type 
but were: DecimalType(10,0) != BinaryType; line 1 pos 33
+
+
+-- !query 226
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), cast(1 as 
boolean)) FROM t
+-- !query 226 schema
+struct<>
+-- !query 226 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DECIMAL(10,0)) IN (CAST(1 AS DECIMAL(10,0)), CAST(1 
AS BOOLEAN)))' due to data type mismatch: Arguments must be same type but were: 
DecimalType(10,0) != BooleanType; line 1 pos 33
+
+
+-- !query 227
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), 
cast('2017-12-11 09:30:00.0' as timestamp)) FROM t
+-- !query 227 schema
+struct<>
+-- !query 227 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DECIMAL(10,0)) IN (CAST(1 AS DECIMAL(10,0)), 
CAST('2017-12-11 09:30:00.0' AS TIMESTAMP)))' due to data type mismatch: 
Arguments must be same type but were: DecimalType(10,0) != TimestampType; line 
1 pos 33
+
+
+-- !query 228
+SELECT cast(1 as decimal(10, 0)) in (cast(1 as decimal(10, 0)), 
cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 228 schema
+struct<>
+-- !query 228 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS DECIMAL(10,0)) IN (CAST(1 AS DECIMAL(10,0)), 
CAST('2017-12-11 09:30:00' AS DATE)))' due to data type mismatch: Arguments 
must be same type but were: DecimalType(10,0) != DateType; line 1 pos 33
+
+
+-- !query 229
+SELECT cast(1 as string) in (cast(1 as string), cast(1 as tinyint)) FROM t
+-- !query 229 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING), CAST(CAST(1 AS TINYINT) AS STRING))):boolean>
+-- !query 229 output
+true
+
+
+-- !query 230
+SELECT cast(1 as string) in (cast(1 as string), cast(1 as smallint)) FROM t
+-- !query 230 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING), CAST(CAST(1 AS SMALLINT) AS STRING))):boolean>
+-- !query 230 output
+true
+
+
+-- !query 231
+SELECT cast(1 as string) in (cast(1 as string), cast(1 as int)) FROM t
+-- !query 231 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING), CAST(CAST(1 AS INT) AS STRING))):boolean>
+-- !query 231 output
+true
+
+
+-- !query 232
+SELECT cast(1 as string) in (cast(1 as string), cast(1 as bigint)) FROM t
+-- !query 232 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING), CAST(CAST(1 AS BIGINT) AS STRING))):boolean>
+-- !query 232 output
+true
+
+
+-- !query 233
+SELECT cast(1 as string) in (cast(1 as string), cast(1 as float)) FROM t
+-- !query 233 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING), CAST(CAST(1 AS FLOAT) AS STRING))):boolean>
+-- !query 233 output
+true
+
+
+-- !query 234
+SELECT cast(1 as string) in (cast(1 as string), cast(1 as double)) FROM t
+-- !query 234 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING), CAST(CAST(1 AS DOUBLE) AS STRING))):boolean>
+-- !query 234 output
+true
+
+
+-- !query 235
+SELECT cast(1 as string) in (cast(1 as string), cast(1 as decimal(10, 0))) 
FROM t
+-- !query 235 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING), CAST(CAST(1 AS DECIMAL(10,0)) AS STRING))):boolean>
+-- !query 235 output
+true
+
+
+-- !query 236
+SELECT cast(1 as string) in (cast(1 as string), cast(1 as string)) FROM t
+-- !query 236 schema
+struct<(CAST(1 AS STRING) IN (CAST(1 AS STRING), CAST(1 AS STRING))):boolean>
+-- !query 236 output
+true
+
+
+-- !query 237
+SELECT cast(1 as string) in (cast(1 as string), cast('1' as binary)) FROM t
+-- !query 237 schema
+struct<>
+-- !query 237 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS STRING) IN (CAST(1 AS STRING), CAST('1' AS 
BINARY)))' due to data type mismatch: Arguments must be same type but were: 
StringType != BinaryType; line 1 pos 25
+
+
+-- !query 238
+SELECT cast(1 as string) in (cast(1 as string), cast(1 as boolean)) FROM t
+-- !query 238 schema
+struct<>
+-- !query 238 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST(1 AS STRING) IN (CAST(1 AS STRING), CAST(1 AS 
BOOLEAN)))' due to data type mismatch: Arguments must be same type but were: 
StringType != BooleanType; line 1 pos 25
+
+
+-- !query 239
+SELECT cast(1 as string) in (cast(1 as string), cast('2017-12-11 09:30:00.0' 
as timestamp)) FROM t
+-- !query 239 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING), CAST(CAST(2017-12-11 09:30:00.0 AS TIMESTAMP) AS STRING))):boolean>
+-- !query 239 output
+true
+
+
+-- !query 240
+SELECT cast(1 as string) in (cast(1 as string), cast('2017-12-11 09:30:00' as 
date)) FROM t
+-- !query 240 schema
+struct<(CAST(CAST(1 AS STRING) AS STRING) IN (CAST(CAST(1 AS STRING) AS 
STRING), CAST(CAST(2017-12-11 09:30:00 AS DATE) AS STRING))):boolean>
+-- !query 240 output
+true
+
+
+-- !query 241
+SELECT cast('1' as binary) in (cast('1' as binary), cast(1 as tinyint)) FROM t
+-- !query 241 schema
+struct<>
+-- !query 241 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST(1 AS 
TINYINT)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != ByteType; line 1 pos 27
+
+
+-- !query 242
+SELECT cast('1' as binary) in (cast('1' as binary), cast(1 as smallint)) FROM t
+-- !query 242 schema
+struct<>
+-- !query 242 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST(1 AS 
SMALLINT)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != ShortType; line 1 pos 27
+
+
+-- !query 243
+SELECT cast('1' as binary) in (cast('1' as binary), cast(1 as int)) FROM t
+-- !query 243 schema
+struct<>
+-- !query 243 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST(1 AS 
INT)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != IntegerType; line 1 pos 27
+
+
+-- !query 244
+SELECT cast('1' as binary) in (cast('1' as binary), cast(1 as bigint)) FROM t
+-- !query 244 schema
+struct<>
+-- !query 244 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST(1 AS 
BIGINT)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != LongType; line 1 pos 27
+
+
+-- !query 245
+SELECT cast('1' as binary) in (cast('1' as binary), cast(1 as float)) FROM t
+-- !query 245 schema
+struct<>
+-- !query 245 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST(1 AS 
FLOAT)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != FloatType; line 1 pos 27
+
+
+-- !query 246
+SELECT cast('1' as binary) in (cast('1' as binary), cast(1 as double)) FROM t
+-- !query 246 schema
+struct<>
+-- !query 246 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST(1 AS 
DOUBLE)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != DoubleType; line 1 pos 27
+
+
+-- !query 247
+SELECT cast('1' as binary) in (cast('1' as binary), cast(1 as decimal(10, 0))) 
FROM t
+-- !query 247 schema
+struct<>
+-- !query 247 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST(1 AS 
DECIMAL(10,0))))' due to data type mismatch: Arguments must be same type but 
were: BinaryType != DecimalType(10,0); line 1 pos 27
+
+
+-- !query 248
+SELECT cast('1' as binary) in (cast('1' as binary), cast(1 as string)) FROM t
+-- !query 248 schema
+struct<>
+-- !query 248 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST(1 AS 
STRING)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != StringType; line 1 pos 27
+
+
+-- !query 249
+SELECT cast('1' as binary) in (cast('1' as binary), cast('1' as binary)) FROM t
+-- !query 249 schema
+struct<(CAST(1 AS BINARY) IN (CAST(1 AS BINARY), CAST(1 AS BINARY))):boolean>
+-- !query 249 output
+true
+
+
+-- !query 250
+SELECT cast('1' as binary) in (cast('1' as binary), cast(1 as boolean)) FROM t
+-- !query 250 schema
+struct<>
+-- !query 250 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST(1 AS 
BOOLEAN)))' due to data type mismatch: Arguments must be same type but were: 
BinaryType != BooleanType; line 1 pos 27
+
+
+-- !query 251
+SELECT cast('1' as binary) in (cast('1' as binary), cast('2017-12-11 
09:30:00.0' as timestamp)) FROM t
+-- !query 251 schema
+struct<>
+-- !query 251 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST('2017-12-11 
09:30:00.0' AS TIMESTAMP)))' due to data type mismatch: Arguments must be same 
type but were: BinaryType != TimestampType; line 1 pos 27
+
+
+-- !query 252
+SELECT cast('1' as binary) in (cast('1' as binary), cast('2017-12-11 09:30:00' 
as date)) FROM t
+-- !query 252 schema
+struct<>
+-- !query 252 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BINARY) IN (CAST('1' AS BINARY), CAST('2017-12-11 
09:30:00' AS DATE)))' due to data type mismatch: Arguments must be same type 
but were: BinaryType != DateType; line 1 pos 27
+
+
+-- !query 253
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast(1 as tinyint)) FROM 
t
+-- !query 253 schema
+struct<>
+-- !query 253 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), CAST(1 AS 
TINYINT)))' due to data type mismatch: Arguments must be same type but were: 
BooleanType != ByteType; line 1 pos 28
+
+
+-- !query 254
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast(1 as smallint)) 
FROM t
+-- !query 254 schema
+struct<>
+-- !query 254 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), CAST(1 AS 
SMALLINT)))' due to data type mismatch: Arguments must be same type but were: 
BooleanType != ShortType; line 1 pos 28
+
+
+-- !query 255
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast(1 as int)) FROM t
+-- !query 255 schema
+struct<>
+-- !query 255 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), CAST(1 AS 
INT)))' due to data type mismatch: Arguments must be same type but were: 
BooleanType != IntegerType; line 1 pos 28
+
+
+-- !query 256
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast(1 as bigint)) FROM t
+-- !query 256 schema
+struct<>
+-- !query 256 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), CAST(1 AS 
BIGINT)))' due to data type mismatch: Arguments must be same type but were: 
BooleanType != LongType; line 1 pos 28
+
+
+-- !query 257
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast(1 as float)) FROM t
+-- !query 257 schema
+struct<>
+-- !query 257 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), CAST(1 AS 
FLOAT)))' due to data type mismatch: Arguments must be same type but were: 
BooleanType != FloatType; line 1 pos 28
+
+
+-- !query 258
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast(1 as double)) FROM t
+-- !query 258 schema
+struct<>
+-- !query 258 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), CAST(1 AS 
DOUBLE)))' due to data type mismatch: Arguments must be same type but were: 
BooleanType != DoubleType; line 1 pos 28
+
+
+-- !query 259
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast(1 as decimal(10, 
0))) FROM t
+-- !query 259 schema
+struct<>
+-- !query 259 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), CAST(1 AS 
DECIMAL(10,0))))' due to data type mismatch: Arguments must be same type but 
were: BooleanType != DecimalType(10,0); line 1 pos 28
+
+
+-- !query 260
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast(1 as string)) FROM t
+-- !query 260 schema
+struct<>
+-- !query 260 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), CAST(1 AS 
STRING)))' due to data type mismatch: Arguments must be same type but were: 
BooleanType != StringType; line 1 pos 28
+
+
+-- !query 261
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast('1' as binary)) 
FROM t
+-- !query 261 schema
+struct<>
+-- !query 261 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), CAST('1' AS 
BINARY)))' due to data type mismatch: Arguments must be same type but were: 
BooleanType != BinaryType; line 1 pos 28
+
+
+-- !query 262
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast(1 as boolean)) FROM 
t
+-- !query 262 schema
+struct<(CAST(1 AS BOOLEAN) IN (CAST(1 AS BOOLEAN), CAST(1 AS 
BOOLEAN))):boolean>
+-- !query 262 output
+true
+
+
+-- !query 263
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast('2017-12-11 
09:30:00.0' as timestamp)) FROM t
+-- !query 263 schema
+struct<>
+-- !query 263 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), 
CAST('2017-12-11 09:30:00.0' AS TIMESTAMP)))' due to data type mismatch: 
Arguments must be same type but were: BooleanType != TimestampType; line 1 pos 
28
+
+
+-- !query 264
+SELECT cast('1' as boolean) in (cast('1' as boolean), cast('2017-12-11 
09:30:00' as date)) FROM t
+-- !query 264 schema
+struct<>
+-- !query 264 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('1' AS BOOLEAN) IN (CAST('1' AS BOOLEAN), 
CAST('2017-12-11 09:30:00' AS DATE)))' due to data type mismatch: Arguments 
must be same type but were: BooleanType != DateType; line 1 pos 28
+
+
+-- !query 265
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast(1 as tinyint)) FROM t
+-- !query 265 schema
+struct<>
+-- !query 265 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN 
(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP), CAST(1 AS TINYINT)))' due to data 
type mismatch: Arguments must be same type but were: TimestampType != ByteType; 
line 1 pos 50
+
+
+-- !query 266
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast(1 as smallint)) FROM t
+-- !query 266 schema
+struct<>
+-- !query 266 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN 
(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP), CAST(1 AS SMALLINT)))' due to data 
type mismatch: Arguments must be same type but were: TimestampType != 
ShortType; line 1 pos 50
+
+
+-- !query 267
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast(1 as int)) FROM t
+-- !query 267 schema
+struct<>
+-- !query 267 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN 
(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP), CAST(1 AS INT)))' due to data type 
mismatch: Arguments must be same type but were: TimestampType != IntegerType; 
line 1 pos 50
+
+
+-- !query 268
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast(1 as bigint)) FROM t
+-- !query 268 schema
+struct<>
+-- !query 268 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN 
(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP), CAST(1 AS BIGINT)))' due to data 
type mismatch: Arguments must be same type but were: TimestampType != LongType; 
line 1 pos 50
+
+
+-- !query 269
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast(1 as float)) FROM t
+-- !query 269 schema
+struct<>
+-- !query 269 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN 
(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP), CAST(1 AS FLOAT)))' due to data 
type mismatch: Arguments must be same type but were: TimestampType != 
FloatType; line 1 pos 50
+
+
+-- !query 270
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast(1 as double)) FROM t
+-- !query 270 schema
+struct<>
+-- !query 270 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN 
(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP), CAST(1 AS DOUBLE)))' due to data 
type mismatch: Arguments must be same type but were: TimestampType != 
DoubleType; line 1 pos 50
+
+
+-- !query 271
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast(1 as decimal(10, 0))) FROM t
+-- !query 271 schema
+struct<>
+-- !query 271 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN 
(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP), CAST(1 AS DECIMAL(10,0))))' due to 
data type mismatch: Arguments must be same type but were: TimestampType != 
DecimalType(10,0); line 1 pos 50
+
+
+-- !query 272
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast(1 as string)) FROM t
+-- !query 272 schema
+struct<(CAST(CAST(2017-12-12 09:30:00.0 AS TIMESTAMP) AS STRING) IN 
(CAST(CAST(2017-12-12 09:30:00.0 AS TIMESTAMP) AS STRING), CAST(CAST(1 AS 
STRING) AS STRING))):boolean>
+-- !query 272 output
+true
+
+
+-- !query 273
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast('1' as binary)) FROM t
+-- !query 273 schema
+struct<>
+-- !query 273 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN 
(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP), CAST('1' AS BINARY)))' due to data 
type mismatch: Arguments must be same type but were: TimestampType != 
BinaryType; line 1 pos 50
+
+
+-- !query 274
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast(1 as boolean)) FROM t
+-- !query 274 schema
+struct<>
+-- !query 274 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP) IN 
(CAST('2017-12-12 09:30:00.0' AS TIMESTAMP), CAST(1 AS BOOLEAN)))' due to data 
type mismatch: Arguments must be same type but were: TimestampType != 
BooleanType; line 1 pos 50
+
+
+-- !query 275
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast('2017-12-11 09:30:00.0' as timestamp)) FROM t
+-- !query 275 schema
+struct<(CAST(2017-12-12 09:30:00.0 AS TIMESTAMP) IN (CAST(2017-12-12 
09:30:00.0 AS TIMESTAMP), CAST(2017-12-11 09:30:00.0 AS TIMESTAMP))):boolean>
+-- !query 275 output
+true
+
+
+-- !query 276
+SELECT cast('2017-12-12 09:30:00.0' as timestamp) in (cast('2017-12-12 
09:30:00.0' as timestamp), cast('2017-12-11 09:30:00' as date)) FROM t
+-- !query 276 schema
+struct<(CAST(CAST(2017-12-12 09:30:00.0 AS TIMESTAMP) AS TIMESTAMP) IN 
(CAST(CAST(2017-12-12 09:30:00.0 AS TIMESTAMP) AS TIMESTAMP), 
CAST(CAST(2017-12-11 09:30:00 AS DATE) AS TIMESTAMP))):boolean>
+-- !query 276 output
+true
+
+
+-- !query 277
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2017-12-12 09:30:00' as 
date), cast(1 as tinyint)) FROM t
+-- !query 277 schema
+struct<>
+-- !query 277 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST('2017-12-12 
09:30:00' AS DATE), CAST(1 AS TINYINT)))' due to data type mismatch: Arguments 
must be same type but were: DateType != ByteType; line 1 pos 43
+
+
+-- !query 278
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2017-12-12 09:30:00' as 
date), cast(1 as smallint)) FROM t
+-- !query 278 schema
+struct<>
+-- !query 278 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST('2017-12-12 
09:30:00' AS DATE), CAST(1 AS SMALLINT)))' due to data type mismatch: Arguments 
must be same type but were: DateType != ShortType; line 1 pos 43
+
+
+-- !query 279
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2017-12-12 09:30:00' as 
date), cast(1 as int)) FROM t
+-- !query 279 schema
+struct<>
+-- !query 279 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST('2017-12-12 
09:30:00' AS DATE), CAST(1 AS INT)))' due to data type mismatch: Arguments must 
be same type but were: DateType != IntegerType; line 1 pos 43
+
+
+-- !query 280
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2017-12-12 09:30:00' as 
date), cast(1 as bigint)) FROM t
+-- !query 280 schema
+struct<>
+-- !query 280 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST('2017-12-12 
09:30:00' AS DATE), CAST(1 AS BIGINT)))' due to data type mismatch: Arguments 
must be same type but were: DateType != LongType; line 1 pos 43
+
+
+-- !query 281
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2017-12-12 09:30:00' as 
date), cast(1 as float)) FROM t
+-- !query 281 schema
+struct<>
+-- !query 281 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST('2017-12-12 
09:30:00' AS DATE), CAST(1 AS FLOAT)))' due to data type mismatch: Arguments 
must be same type but were: DateType != FloatType; line 1 pos 43
+
+
+-- !query 282
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2017-12-12 09:30:00' as 
date), cast(1 as double)) FROM t
+-- !query 282 schema
+struct<>
+-- !query 282 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST('2017-12-12 
09:30:00' AS DATE), CAST(1 AS DOUBLE)))' due to data type mismatch: Arguments 
must be same type but were: DateType != DoubleType; line 1 pos 43
+
+
+-- !query 283
+SELECT cast('2017-12-12 09:30:00' as date) in (cast('2017-12-12 09:30:00' as 
date), cast(1 as decimal(10, 0))) FROM t
+-- !query 283 schema
+struct<>
+-- !query 283 output
+org.apache.spark.sql.AnalysisException
+cannot resolve '(CAST('2017-12-12 09:30:00' AS DATE) IN (CAST('2017-12-12 
09:30:00' AS DATE), CAST(1 AS DECIMAL(10,0))))' due to data type mismatch: 
Arguments must be same type but were: 

<TRUNCATED>

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org
For additional commands, e-mail: commits-h...@spark.apache.org

Reply via email to