@@ -808,6 +808,135 @@ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE NOT 35 < u.age + 1 <=
808
808
{"id": 844424930131973, "label": "people", "properties": {"age": 15, "name": "David"}}::vertex
809
809
(3 rows)
810
810
811
+ -- order of operations
812
+ -- expressions
813
+ SELECT * FROM cypher('chained', $$ RETURN 1 = 1 = 1 $$) AS (result agtype);
814
+ result
815
+ --------
816
+ true
817
+ (1 row)
818
+
819
+ SELECT * FROM cypher('chained', $$ RETURN 1 = 2 = 1 $$) AS (result agtype);
820
+ result
821
+ --------
822
+ false
823
+ (1 row)
824
+
825
+ SELECT * FROM cypher('chained', $$ RETURN (1 = 1) = 1 $$) AS (result agtype);
826
+ result
827
+ --------
828
+ false
829
+ (1 row)
830
+
831
+ SELECT * FROM cypher('chained', $$ RETURN 1 = (1 = 1) $$) AS (result agtype);
832
+ result
833
+ --------
834
+ false
835
+ (1 row)
836
+
837
+ SELECT * FROM cypher('chained', $$ RETURN 1 = 1 = true $$) AS (result agtype);
838
+ result
839
+ --------
840
+ false
841
+ (1 row)
842
+
843
+ SELECT * FROM cypher('chained', $$ RETURN (1 = 1) = true $$) AS (result agtype);
844
+ result
845
+ --------
846
+ true
847
+ (1 row)
848
+
849
+ SELECT * FROM cypher('chained', $$ RETURN true = ((1 = 1) = true) $$) AS (result agtype);
850
+ result
851
+ --------
852
+ true
853
+ (1 row)
854
+
855
+ SELECT * FROM cypher('chained', $$ RETURN ((1 = 1) = 1) = 1 $$) AS (result agtype);
856
+ result
857
+ --------
858
+ false
859
+ (1 row)
860
+
861
+ SELECT * FROM cypher('chained', $$ RETURN (1 = (1 = 1)) = 1 $$) AS (result agtype);
862
+ result
863
+ --------
864
+ false
865
+ (1 row)
866
+
867
+ SELECT * FROM cypher('chained', $$ RETURN ((1 = (1 = 1)) = 1) = 1 $$) AS (result agtype);
868
+ result
869
+ --------
870
+ false
871
+ (1 row)
872
+
873
+ -- in clause
874
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE 35 = u.age = 35 RETURN u $$) AS (result agtype);
875
+ result
876
+ ---------------------------------------------------------------------------------------------------
877
+ {"id": 844424930131971, "label": "people", "properties": {"age": 35, "name": "Samantha"}}::vertex
878
+ (1 row)
879
+
880
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE (35 = u.age) = 35 RETURN u $$) AS (result agtype);
881
+ result
882
+ --------
883
+ (0 rows)
884
+
885
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE (35 = 35) = u.age RETURN u $$) AS (result agtype);
886
+ result
887
+ --------
888
+ (0 rows)
889
+
890
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE u.age = u.age = u.age RETURN u $$) AS (result agtype);
891
+ result
892
+ ---------------------------------------------------------------------------------------------------
893
+ {"id": 844424930131969, "label": "people", "properties": {"age": 50, "name": "Jason"}}::vertex
894
+ {"id": 844424930131970, "label": "people", "properties": {"age": 25, "name": "Amy"}}::vertex
895
+ {"id": 844424930131971, "label": "people", "properties": {"age": 35, "name": "Samantha"}}::vertex
896
+ {"id": 844424930131972, "label": "people", "properties": {"age": 40, "name": "Mark"}}::vertex
897
+ {"id": 844424930131973, "label": "people", "properties": {"age": 15, "name": "David"}}::vertex
898
+ (5 rows)
899
+
900
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE (u.age = u.age) = u.age RETURN u $$) AS (result agtype);
901
+ result
902
+ --------
903
+ (0 rows)
904
+
905
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE u.age = (u.age = u.age) RETURN u $$) AS (result agtype);
906
+ result
907
+ --------
908
+ (0 rows)
909
+
910
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE (u.age = u.age) = (u.age = u.age) RETURN u $$) AS (result agtype);
911
+ result
912
+ ---------------------------------------------------------------------------------------------------
913
+ {"id": 844424930131969, "label": "people", "properties": {"age": 50, "name": "Jason"}}::vertex
914
+ {"id": 844424930131970, "label": "people", "properties": {"age": 25, "name": "Amy"}}::vertex
915
+ {"id": 844424930131971, "label": "people", "properties": {"age": 35, "name": "Samantha"}}::vertex
916
+ {"id": 844424930131972, "label": "people", "properties": {"age": 40, "name": "Mark"}}::vertex
917
+ {"id": 844424930131973, "label": "people", "properties": {"age": 15, "name": "David"}}::vertex
918
+ (5 rows)
919
+
920
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE u.age = (u.age = (u.age = u.age)) RETURN u $$) AS (result agtype);
921
+ result
922
+ --------
923
+ (0 rows)
924
+
925
+ SELECT * FROM cypher('chained', $$ MATCH (u:people) WHERE u.age = 35 = ((u.age = u.age) = u.age) RETURN u $$) AS (result agtype);
926
+ result
927
+ --------
928
+ (0 rows)
929
+
930
+ 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);
931
+ result
932
+ ---------------------------------------------------------------------------------------------------
933
+ {"id": 844424930131969, "label": "people", "properties": {"age": 50, "name": "Jason"}}::vertex
934
+ {"id": 844424930131970, "label": "people", "properties": {"age": 25, "name": "Amy"}}::vertex
935
+ {"id": 844424930131971, "label": "people", "properties": {"age": 35, "name": "Samantha"}}::vertex
936
+ {"id": 844424930131972, "label": "people", "properties": {"age": 40, "name": "Mark"}}::vertex
937
+ {"id": 844424930131973, "label": "people", "properties": {"age": 15, "name": "David"}}::vertex
938
+ (5 rows)
939
+
811
940
--
812
941
-- Test transform logic for IS NULL & IS NOT NULL
813
942
--
0 commit comments