github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/sql/sem/tree/testdata/eval/comparison (about)

     1  # Comparisons.
     2  
     3  eval
     4  0 = 1
     5  ----
     6  false
     7  
     8  eval
     9  0 != 1
    10  ----
    11  true
    12  
    13  eval
    14  0 < 1
    15  ----
    16  true
    17  
    18  eval
    19  0 <= 1
    20  ----
    21  true
    22  
    23  eval
    24  0 > 1
    25  ----
    26  false
    27  
    28  eval
    29  1 > -1
    30  ----
    31  true
    32  
    33  eval
    34  1 <= -1
    35  ----
    36  false
    37  
    38  eval
    39  -1 >= 1
    40  ----
    41  false
    42  
    43  eval
    44  -1 < 1
    45  ----
    46  true
    47  
    48  eval
    49  0 >= 1
    50  ----
    51  false
    52  
    53  eval
    54  true = false
    55  ----
    56  false
    57  
    58  eval
    59  true != false
    60  ----
    61  true
    62  
    63  eval
    64  true < false
    65  ----
    66  false
    67  
    68  eval
    69  true <= false
    70  ----
    71  false
    72  
    73  eval
    74  true > false
    75  ----
    76  true
    77  
    78  eval
    79  true >= false
    80  ----
    81  true
    82  
    83  eval
    84  'a' = 'b'
    85  ----
    86  false
    87  
    88  eval
    89  'a' != 'b'
    90  ----
    91  true
    92  
    93  eval
    94  'a' < 'b'
    95  ----
    96  true
    97  
    98  eval
    99  'a' <= 'b'
   100  ----
   101  true
   102  
   103  eval
   104  'a' > 'b'
   105  ----
   106  false
   107  
   108  eval
   109  'a' >= 'b'
   110  ----
   111  false
   112  
   113  eval
   114  'a' >= 'b'
   115  ----
   116  false
   117  
   118  eval
   119  '10' > '2'
   120  ----
   121  false
   122  
   123  eval
   124  1.1 = 1.2
   125  ----
   126  false
   127  
   128  eval
   129  1.1 != 1.2
   130  ----
   131  true
   132  
   133  eval
   134  1.1 < 1.2
   135  ----
   136  true
   137  
   138  eval
   139  1.1 <= 1.2
   140  ----
   141  true
   142  
   143  eval
   144  1.1 > 1.2
   145  ----
   146  false
   147  
   148  eval
   149  1.1 >= 1.2
   150  ----
   151  false
   152  
   153  eval
   154  1.1::decimal = 1.2::decimal
   155  ----
   156  false
   157  
   158  eval
   159  1.1::decimal != 1.2::decimal
   160  ----
   161  true
   162  
   163  eval
   164  1.1::decimal < 1.2::decimal
   165  ----
   166  true
   167  
   168  eval
   169  1.1::decimal <= 1.2::decimal
   170  ----
   171  true
   172  
   173  eval
   174  1.1::decimal > 1.2::decimal
   175  ----
   176  false
   177  
   178  eval
   179  1.1::decimal >= 1.2::decimal
   180  ----
   181  false
   182  
   183  eval
   184  '2015-10-01'::date = '2015-10-02'::date
   185  ----
   186  false
   187  
   188  eval
   189  '2015-10-01'::date = '2015-10-01'::date
   190  ----
   191  true
   192  
   193  eval
   194  '2016-07-19 +0:0:0'::date = '2016-07-19'::date
   195  ----
   196  true
   197  
   198  eval
   199  '2016-7-19 +0:0:0'::date = '2016-07-19'::date
   200  ----
   201  true
   202  
   203  eval
   204  '2015-10-01'::date != '2015-10-02'::date
   205  ----
   206  true
   207  
   208  eval
   209  '2015-10-01'::date < '2015-10-02'::date
   210  ----
   211  true
   212  
   213  eval
   214  '2015-10-01'::date <= '2015-10-02'::date
   215  ----
   216  true
   217  
   218  eval
   219  '2015-10-01'::date > '2015-10-02'::date
   220  ----
   221  false
   222  
   223  eval
   224  '2015-10-01'::date >= '2015-10-02'::date
   225  ----
   226  false
   227  
   228  eval
   229  '12:00:00'::time = '12:00:01'::time
   230  ----
   231  false
   232  
   233  eval
   234  '12:00:00'::time = '12:00:00'::time
   235  ----
   236  true
   237  
   238  eval
   239  '12:00:00.000000'::time = '12:00:00'::time
   240  ----
   241  true
   242  
   243  eval
   244  '12:00:00'::time != '12:00:01'::time
   245  ----
   246  true
   247  
   248  eval
   249  '12:00:00'::time < '12:00:01'::time
   250  ----
   251  true
   252  
   253  eval
   254  '12:00:00'::time <= '12:00:01'::time
   255  ----
   256  true
   257  
   258  eval
   259  '12:00:00'::time > '12:00:01'::time
   260  ----
   261  false
   262  
   263  eval
   264  '12:00:00'::time >= '12:00:01'::time
   265  ----
   266  false
   267  
   268  eval
   269  '12:00:00'::time = '12:00:00+0'::timetz
   270  ----
   271  true
   272  
   273  eval
   274  '12:00:00'::time != '12:00:00+0'::timetz
   275  ----
   276  false
   277  
   278  eval
   279  '12:00:00'::time < '11:00:00-1'::timetz
   280  ----
   281  true
   282  
   283  eval
   284  '12:00:00'::time >= '11:00:00-1'::timetz
   285  ----
   286  false
   287  
   288  eval
   289  '12:00:00'::time > '13:00:00+1'::timetz
   290  ----
   291  true
   292  
   293  eval
   294  '12:00:00'::time <= '13:00:00+1'::timetz
   295  ----
   296  false
   297  
   298  eval
   299  '12:00:00-07'::timetz = '12:00:00-08'::timetz
   300  ----
   301  false
   302  
   303  eval
   304  '12:00:00+09'::timetz = '12:00:00+09'::timetz
   305  ----
   306  true
   307  
   308  eval
   309  '12:00:00+01'::timetz != '12:00:00-01'::timetz
   310  ----
   311  true
   312  
   313  eval
   314  '12:00:00+01'::timetz < '12:00:00-01'::timetz
   315  ----
   316  true
   317  
   318  eval
   319  '12:00:00+01'::timetz <= '12:00:00-01'::timetz
   320  ----
   321  true
   322  
   323  eval
   324  '12:00:00+10'::timetz > '12:00:00+09'::timetz
   325  ----
   326  false
   327  
   328  eval
   329  '12:00:00+10'::timetz >= '12:00:00+09'::timetz
   330  ----
   331  false
   332  
   333  eval
   334  '2015-10-01'::timestamp = '2015-10-02'::timestamp
   335  ----
   336  false
   337  
   338  eval
   339  '2015-10-01'::timestamp != '2015-10-02'::timestamp
   340  ----
   341  true
   342  
   343  eval
   344  '2015-10-01'::timestamp < '2015-10-02'::timestamp
   345  ----
   346  true
   347  
   348  eval
   349  '2015-10-01'::timestamp <= '2015-10-02'::timestamp
   350  ----
   351  true
   352  
   353  eval
   354  '2015-10-01'::timestamp > '2015-10-02'::timestamp
   355  ----
   356  false
   357  
   358  eval
   359  '2015-10-01'::timestamp >= '2015-10-02'::timestamp
   360  ----
   361  false
   362  
   363  eval
   364  '2015-10-01 -01:00'::timestamptz = '2015-10-01 01:00:00'::timestamp
   365  ----
   366  true
   367  
   368  eval
   369  '12h2m1s23ms'::interval = '12h2m1s24ms'::interval
   370  ----
   371  false
   372  
   373  eval
   374  '12h2m1s23ms'::interval != '12h2m1s24ms'::interval
   375  ----
   376  true
   377  
   378  eval
   379  '12h2m1s23ms'::interval < '12h2m1s24ms'::interval
   380  ----
   381  true
   382  
   383  eval
   384  '12h2m1s23ms'::interval <= '12h2m1s24ms'::interval
   385  ----
   386  true
   387  
   388  eval
   389  '12h2m1s23ms'::interval > '12h2m1s24ms'::interval
   390  ----
   391  false
   392  
   393  eval
   394  '12h2m1s23ms'::interval >= '12h2m1s24ms'::interval
   395  ----
   396  false
   397  
   398  eval
   399  'P1Y2M10DT2H30M'::interval = 'P1Y2M10DT2H31M'::interval
   400  ----
   401  false
   402  
   403  eval
   404  'P1Y2M10DT2H30M'::interval != 'P1Y2M10DT2H31M'::interval
   405  ----
   406  true
   407  
   408  eval
   409  'P1Y2M10DT2H29M'::interval < 'P1Y2M10DT2H30M'::interval
   410  ----
   411  true
   412  
   413  eval
   414  'P1Y2M10DT2H29M'::interval <= 'P1Y2M10DT2H30M'::interval
   415  ----
   416  true
   417  
   418  eval
   419  'P1Y2M10DT2H29M'::interval > 'P1Y2M10DT2H30M'::interval
   420  ----
   421  false
   422  
   423  eval
   424  'P1Y2M10DT2H29M'::interval >= 'P1Y2M10DT2H30M'::interval
   425  ----
   426  false
   427  
   428  eval
   429  '1-2 10 2:30'::interval = 'P1Y2M10DT2H31M'::interval
   430  ----
   431  false
   432  
   433  eval
   434  '1-2 10 2:30'::interval != 'P1Y2M10DT2H31M'::interval
   435  ----
   436  true
   437  
   438  eval
   439  '1-2 10 2:29'::interval < 'P1Y2M10DT2H30M'::interval
   440  ----
   441  true
   442  
   443  eval
   444  '1-2 10 2:29'::interval <= 'P1Y2M10DT2H30M'::interval
   445  ----
   446  true
   447  
   448  eval
   449  '1-2 10 2:29'::interval > 'P1Y2M10DT2H30M'::interval
   450  ----
   451  false
   452  
   453  eval
   454  '1-2 10 2:29'::interval >= 'P1Y2M10DT2H30M'::interval
   455  ----
   456  false
   457  
   458  eval
   459  '1 year 2 months 3 days 4 hours 5 minutes 6 seconds'::interval = '1 year 2 months 3 days 4 hours 5 minutes 7 seconds'::interval
   460  ----
   461  false
   462  
   463  eval
   464  '1 year 2 months 3 days 4 hours 5 minutes 6 seconds'::interval != '1 year 2 months 3 days 4 hours 5 minutes 7 seconds'::interval
   465  ----
   466  true
   467  
   468  eval
   469  '1 year 2 months 3 days 4 hours 5 minutes 6 seconds'::interval < '1 year 2 months 3 days 4 hours 5 minutes 7 seconds'::interval
   470  ----
   471  true
   472  
   473  eval
   474  '1 year 2 months 3 days 4 hours 5 minutes 6 seconds'::interval <= '1 year 2 months 3 days 4 hours 5 minutes 7 seconds'::interval
   475  ----
   476  true
   477  
   478  eval
   479  '1 year 2 months 3 days 4 hours 5 minutes 6 seconds'::interval > '1 year 2 months 3 days 4 hours 5 minutes 7 seconds'::interval
   480  ----
   481  false
   482  
   483  eval
   484  '1 year 2 months 3 days 4 hours 5 minutes 6 seconds'::interval >= '1 year 2 months 3 days 4 hours 5 minutes 7 seconds'::interval
   485  ----
   486  false
   487  
   488  eval
   489  '5 minutes 6 seconds'::interval = '5 minutes 6 seconds'::interval
   490  ----
   491  true
   492  
   493  eval
   494  'PT2H30M'::interval = 'PT2H30M'::interval
   495  ----
   496  true
   497  
   498  # Comparisons against NULL result in NULL.
   499  
   500  eval
   501  0 = NULL
   502  ----
   503  NULL
   504  
   505  eval
   506  0 < NULL
   507  ----
   508  NULL
   509  
   510  eval
   511  0 <= NULL
   512  ----
   513  NULL
   514  
   515  eval
   516  NULL = 0
   517  ----
   518  NULL
   519  
   520  eval
   521  NULL < 0
   522  ----
   523  NULL
   524  
   525  eval
   526  NULL <= 0
   527  ----
   528  NULL
   529  
   530  eval
   531  0.1 = NULL
   532  ----
   533  NULL
   534  
   535  eval
   536  0.1 < NULL
   537  ----
   538  NULL
   539  
   540  eval
   541  0.1 <= NULL
   542  ----
   543  NULL
   544  
   545  eval
   546  NULL = 0.1
   547  ----
   548  NULL
   549  
   550  eval
   551  NULL < 0.1
   552  ----
   553  NULL
   554  
   555  eval
   556  NULL <= 0.1
   557  ----
   558  NULL
   559  
   560  eval
   561  0.1::float = NULL
   562  ----
   563  NULL
   564  
   565  eval
   566  0.1::float < NULL
   567  ----
   568  NULL
   569  
   570  eval
   571  0.1::float <= NULL
   572  ----
   573  NULL
   574  
   575  eval
   576  NULL = 0.1::float
   577  ----
   578  NULL
   579  
   580  eval
   581  NULL < 0.1::float
   582  ----
   583  NULL
   584  
   585  eval
   586  NULL <= 0.1::float
   587  ----
   588  NULL
   589  
   590  eval
   591  true = NULL
   592  ----
   593  NULL
   594  
   595  eval
   596  true < NULL
   597  ----
   598  NULL
   599  
   600  eval
   601  true <= NULL
   602  ----
   603  NULL
   604  
   605  eval
   606  NULL = true
   607  ----
   608  NULL
   609  
   610  eval
   611  NULL < true
   612  ----
   613  NULL
   614  
   615  eval
   616  NULL <= true
   617  ----
   618  NULL
   619  
   620  eval
   621  'a' = NULL
   622  ----
   623  NULL
   624  
   625  eval
   626  'a' < NULL
   627  ----
   628  NULL
   629  
   630  eval
   631  'a' <= NULL
   632  ----
   633  NULL
   634  
   635  eval
   636  NULL = 'a'
   637  ----
   638  NULL
   639  
   640  eval
   641  NULL < 'a'
   642  ----
   643  NULL
   644  
   645  eval
   646  NULL <= 'a'
   647  ----
   648  NULL
   649  
   650  eval
   651  '2015-10-01'::date = NULL
   652  ----
   653  NULL
   654  
   655  eval
   656  '2015-10-01'::date < NULL
   657  ----
   658  NULL
   659  
   660  eval
   661  '2015-10-01'::date <= NULL
   662  ----
   663  NULL
   664  
   665  eval
   666  NULL = '2015-10-01'::date
   667  ----
   668  NULL
   669  
   670  eval
   671  NULL < '2015-10-01'::date
   672  ----
   673  NULL
   674  
   675  eval
   676  NULL <= '2015-10-01'::date
   677  ----
   678  NULL
   679  
   680  eval
   681  '12:00:00'::time = NULL
   682  ----
   683  NULL
   684  
   685  eval
   686  '12:00:00'::time < NULL
   687  ----
   688  NULL
   689  
   690  eval
   691  '12:00:00'::time <= NULL
   692  ----
   693  NULL
   694  
   695  eval
   696  NULL = '12:00:00'::time
   697  ----
   698  NULL
   699  
   700  eval
   701  NULL < '12:00:00'::time
   702  ----
   703  NULL
   704  
   705  eval
   706  NULL <= '12:00:00'::time
   707  ----
   708  NULL
   709  
   710  eval
   711  '12:00:00+01'::timetz = NULL
   712  ----
   713  NULL
   714  
   715  eval
   716  '12:00:00+01'::timetz < NULL
   717  ----
   718  NULL
   719  
   720  eval
   721  '12:00:00+01'::timetz <= NULL
   722  ----
   723  NULL
   724  
   725  eval
   726  NULL = '12:00:00+01'::timetz
   727  ----
   728  NULL
   729  
   730  eval
   731  NULL < '12:00:00+01'::timetz
   732  ----
   733  NULL
   734  
   735  eval
   736  NULL <= '12:00:00+01'::timetz
   737  ----
   738  NULL
   739  
   740  eval
   741  '2015-10-01'::timestamp = NULL
   742  ----
   743  NULL
   744  
   745  eval
   746  '2015-10-01'::timestamp < NULL
   747  ----
   748  NULL
   749  
   750  eval
   751  '2015-10-01'::timestamp <= NULL
   752  ----
   753  NULL
   754  
   755  eval
   756  NULL = '2015-10-01'::timestamp
   757  ----
   758  NULL
   759  
   760  eval
   761  NULL < '2015-10-01'::timestamp
   762  ----
   763  NULL
   764  
   765  eval
   766  NULL <= '2015-10-01'::timestamp
   767  ----
   768  NULL
   769  
   770  eval
   771  '2015-10-01'::timestamptz = NULL
   772  ----
   773  NULL
   774  
   775  eval
   776  '2015-10-01'::timestamptz < NULL
   777  ----
   778  NULL
   779  
   780  eval
   781  '2015-10-01'::timestamptz <= NULL
   782  ----
   783  NULL
   784  
   785  eval
   786  NULL = '2015-10-01'::timestamptz
   787  ----
   788  NULL
   789  
   790  eval
   791  NULL < '2015-10-01'::timestamptz
   792  ----
   793  NULL
   794  
   795  eval
   796  NULL <= '2015-10-01'::timestamptz
   797  ----
   798  NULL
   799  
   800  eval
   801  '1-2 10 2:30'::interval = NULL
   802  ----
   803  NULL
   804  
   805  eval
   806  '1-2 10 2:30'::interval < NULL
   807  ----
   808  NULL
   809  
   810  eval
   811  '1-2 10 2:30'::interval <= NULL
   812  ----
   813  NULL
   814  
   815  eval
   816  NULL = '1-2 10 2:30'::interval
   817  ----
   818  NULL
   819  
   820  eval
   821  NULL < '1-2 10 2:30'::interval
   822  ----
   823  NULL
   824  
   825  eval
   826  NULL <= '1-2 10 2:30'::interval
   827  ----
   828  NULL
   829  
   830  eval
   831  NULL = NULL
   832  ----
   833  NULL
   834  
   835  eval
   836  NULL < NULL
   837  ----
   838  NULL
   839  
   840  eval
   841  NULL <= NULL
   842  ----
   843  NULL
   844  
   845  eval
   846  NULL < ARRAY[1]
   847  ----
   848  NULL
   849  
   850  eval
   851  NULL <= ARRAY[1]
   852  ----
   853  NULL
   854  
   855  eval
   856  ARRAY[1] < NULL
   857  ----
   858  NULL
   859  
   860  eval
   861  ARRAY[1] <= NULL
   862  ----
   863  NULL
   864  
   865  eval
   866  ARRAY[1] < ARRAY[2]
   867  ----
   868  true
   869  
   870  eval
   871  ARRAY[2] < ARRAY[2, 3]
   872  ----
   873  true
   874  
   875  eval
   876  ARRAY[2] <= ARRAY[2]
   877  ----
   878  true
   879  
   880  eval
   881  ARRAY[]:::INT[] < ARRAY[1]
   882  ----
   883  true
   884  
   885  eval
   886  ARRAY[1, 2, 3] < ARRAY[1, 2]
   887  ----
   888  false
   889  
   890  eval
   891  ARRAY[1, 2, 3] < ARRAY[1, 1]
   892  ----
   893  false
   894  
   895  eval
   896  ARRAY[2, 2, 2, 4] < ARRAY[2, 2, 2, 5]
   897  ----
   898  true
   899  
   900  eval
   901  ARRAY[1, 2, 3] = ARRAY[1, 2, 3]
   902  ----
   903  true
   904  
   905  eval
   906  ARRAY[NULL]:::INT[] <= ARRAY[NULL]:::INT[]
   907  ----
   908  true
   909  
   910  eval
   911  ARRAY[NULL, 1] >= ARRAY[NULL, 1]
   912  ----
   913  true
   914  
   915  eval
   916  ARRAY[NULL, 1, NULL] > ARRAY[NULL, 2, NULL]
   917  ----
   918  false
   919  
   920  # This differs from postgres -- crdb nulls come first.
   921  eval
   922  ARRAY[NULL, NULL]:::INT[] < ARRAY[NULL, 1]
   923  ----
   924  true