@@ -741,6 +741,135 @@ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE NOT 35 < u.age + 1 <=
741
741
{"id": 844424930131973, "label": "people", "properties": {"age": 15, "name": "David"}}::vertex
742
742
(3 rows)
743
743
744
+ -- order of operations
745
+ -- expressions
746
+ SELECT * FROM cypher('chained', $$ RETURN 1 = 1 = 1 $$) AS (result agtype);
747
+ result
748
+ --------
749
+ true
750
+ (1 row)
751
+
752
+ SELECT * FROM cypher('chained', $$ RETURN 1 = 2 = 1 $$) AS (result agtype);
753
+ result
754
+ --------
755
+ false
756
+ (1 row)
757
+
758
+ SELECT * FROM cypher('chained', $$ RETURN (1 = 1) = 1 $$) AS (result agtype);
759
+ result
760
+ --------
761
+ false
762
+ (1 row)
763
+
764
+ SELECT * FROM cypher('chained', $$ RETURN 1 = (1 = 1) $$) AS (result agtype);
765
+ result
766
+ --------
767
+ false
768
+ (1 row)
769
+
770
+ SELECT * FROM cypher('chained', $$ RETURN 1 = 1 = true $$) AS (result agtype);
771
+ result
772
+ --------
773
+ false
774
+ (1 row)
775
+
776
+ SELECT * FROM cypher('chained', $$ RETURN (1 = 1) = true $$) AS (result agtype);
777
+ result
778
+ --------
779
+ true
780
+ (1 row)
781
+
782
+ SELECT * FROM cypher('chained', $$ RETURN true = ((1 = 1) = true) $$) AS (result agtype);
783
+ result
784
+ --------
785
+ true
786
+ (1 row)
787
+
788
+ SELECT * FROM cypher('chained', $$ RETURN ((1 = 1) = 1) = 1 $$) AS (result agtype);
789
+ result
790
+ --------
791
+ false
792
+ (1 row)
793
+
794
+ SELECT * FROM cypher('chained', $$ RETURN (1 = (1 = 1)) = 1 $$) AS (result agtype);
795
+ result
796
+ --------
797
+ false
798
+ (1 row)
799
+
800
+ SELECT * FROM cypher('chained', $$ RETURN ((1 = (1 = 1)) = 1) = 1 $$) AS (result agtype);
801
+ result
802
+ --------
803
+ false
804
+ (1 row)
805
+
806
+ -- in clause
807
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE 35 = u.age = 35 RETURN u $$) AS (result agtype);
808
+ result
809
+ ---------------------------------------------------------------------------------------------------
810
+ {"id": 844424930131971, "label": "people", "properties": {"age": 35, "name": "Samantha"}}::vertex
811
+ (1 row)
812
+
813
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE (35 = u.age) = 35 RETURN u $$) AS (result agtype);
814
+ result
815
+ --------
816
+ (0 rows)
817
+
818
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE (35 = 35) = u.age RETURN u $$) AS (result agtype);
819
+ result
820
+ --------
821
+ (0 rows)
822
+
823
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE u.age = u.age = u.age RETURN u $$) AS (result agtype);
824
+ result
825
+ ---------------------------------------------------------------------------------------------------
826
+ {"id": 844424930131969, "label": "people", "properties": {"age": 50, "name": "Jason"}}::vertex
827
+ {"id": 844424930131970, "label": "people", "properties": {"age": 25, "name": "Amy"}}::vertex
828
+ {"id": 844424930131971, "label": "people", "properties": {"age": 35, "name": "Samantha"}}::vertex
829
+ {"id": 844424930131972, "label": "people", "properties": {"age": 40, "name": "Mark"}}::vertex
830
+ {"id": 844424930131973, "label": "people", "properties": {"age": 15, "name": "David"}}::vertex
831
+ (5 rows)
832
+
833
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE (u.age = u.age) = u.age RETURN u $$) AS (result agtype);
834
+ result
835
+ --------
836
+ (0 rows)
837
+
838
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE u.age = (u.age = u.age) RETURN u $$) AS (result agtype);
839
+ result
840
+ --------
841
+ (0 rows)
842
+
843
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE (u.age = u.age) = (u.age = u.age) RETURN u $$) AS (result agtype);
844
+ result
845
+ ---------------------------------------------------------------------------------------------------
846
+ {"id": 844424930131969, "label": "people", "properties": {"age": 50, "name": "Jason"}}::vertex
847
+ {"id": 844424930131970, "label": "people", "properties": {"age": 25, "name": "Amy"}}::vertex
848
+ {"id": 844424930131971, "label": "people", "properties": {"age": 35, "name": "Samantha"}}::vertex
849
+ {"id": 844424930131972, "label": "people", "properties": {"age": 40, "name": "Mark"}}::vertex
850
+ {"id": 844424930131973, "label": "people", "properties": {"age": 15, "name": "David"}}::vertex
851
+ (5 rows)
852
+
853
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE u.age = (u.age = (u.age = u.age)) RETURN u $$) AS (result agtype);
854
+ result
855
+ --------
856
+ (0 rows)
857
+
858
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE u.age = 35 = ((u.age = u.age) = u.age) RETURN u $$) AS (result agtype);
859
+ result
860
+ --------
861
+ (0 rows)
862
+
863
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE ((u.age = u.age) = (u.age = u.age)) = (u.age = u.age) RETURN u $$) AS (result agtype);
864
+ result
865
+ ---------------------------------------------------------------------------------------------------
866
+ {"id": 844424930131969, "label": "people", "properties": {"age": 50, "name": "Jason"}}::vertex
867
+ {"id": 844424930131970, "label": "people", "properties": {"age": 25, "name": "Amy"}}::vertex
868
+ {"id": 844424930131971, "label": "people", "properties": {"age": 35, "name": "Samantha"}}::vertex
869
+ {"id": 844424930131972, "label": "people", "properties": {"age": 40, "name": "Mark"}}::vertex
870
+ {"id": 844424930131973, "label": "people", "properties": {"age": 15, "name": "David"}}::vertex
871
+ (5 rows)
872
+
744
873
--
745
874
-- Test transform logic for IS NULL & IS NOT NULL
746
875
--
0 commit comments