WITH RECURSIVE patches 0803
Hi,
Included are the latest WITH RECURSIVE patches against CVS HEAD.
The main differences from previous patches include:
- Allow multiple query names (mutual recursion is not still allowed)
These are some examples from the regression test:
WITH RECURSIVE
x(id) AS (SELECT * FROM y UNION ALL SELECT id+1 FROM x WHERE id < 5),
y(id) AS (values (1))
SELECT * FROM x;
WITH RECURSIVE
x(id) AS
(SELECT 1 UNION ALL SELECT id+1 FROM x WHERE id < 3 ),
y(id) AS
(SELECT * FROM x UNION ALL SELECT * FROM x),
z(id) AS
(SELECT * FROM y UNION ALL SELECT id+1 FROM z WHERE id < 10)
SELECT * FROM z;
- Fix some cases where target list has subquries
WITH RECURSIVE t(id) AS (
SELECT (VALUES(1))
UNION ALL
SELECT id+1 FROM t WHERE id < 5
)
SELECT * FROM t;
Remaining works:
1) write sgml docs
2) write README
Currently I'm writing 2) based on the one posted before.
BTW, I'm traveling to the United States from Aug 4 to Aug 12. I'm
going to join Linux World, PGDay and pgpool party at Bruce's. I hope
to meet many community poeple soon!
--
Tatsuo Ishii
SRA OSS, Inc. Japan
Attachments:
recursive_query.patch.gzapplication/octet-streamDownload
�Y�H recursive_query.patch �=kW�H���Wt���
����$��83�%�2�{�9>�nc%���e�l��������
���s����]�]U]o���m2�f���q4�e1����1��2�QR���f��Wk4kn�4z�no���7���4���f�V��s/M�x��4����}���m��4N�C�%���]�j���y��0�3����h{��6w��w������������
>��y���wP2
<�^l�������[�4�%!\>�5zTV�E�b|��z���J/�* og�+�
y�����������20� G����%y�����<��<>�
0Ce|�uS��(�.Q��T����g������$Z�H��d�G>�k��yO^���^oG����Y��>���6z�����_�i������B�yAB^�,������8����%~x}���"db��Ku��������H�i����$Y0J<�|~��>��0�yv��#��4���c���Q���b2�,��Q�����P�?����K� ���W��������7��*H�������nF��Y���g8Z�����ZS�����}������im��5���]l��������v��x�&Z`�A��oR -��vx�v �n� �#6y�W����up> !yN:61B������l
��K-�E��VE�3���'�wG�l��c�"!���>���Ss;���w����h-�wWG�f�i���
=u�76F�rx8�����ic���� [�u��h���� Q�G���"F9��[��������3��'3o~��T���[��Ns���Z��:-������.F^��N�!xk�Fo��P�������������
T��?t�-w��Nw��n��o8=�z��C>/���1
���r���V�,����$�R�T��lW �kX�0����iTE�����s/���W� L�n��DA�'�P��vG(���r�J�o��^��*\����gxow�2F������B�\�&.c{Wv�*��3P.�_� ����]U���o�P�����]����E��9'Q�%�C�p5e[��SoGP/�gc:�A�o��+d�^��c��^���5rg��~N�l{�G 0H��y���N����Q�����/� �����H�������qO�}�������p���0�#~��d��`���)�T�p��:�7S�l/�^7�me����]*�-��g����C�����9Nv��m�
\�� C�h����5�+50�bR��[�X���3|���'��y����������jmV�),Mt��L���g���������*G���
�>�F���r"��1����*���D�����$�w_{���h�v����o5��;j�2�wW����;��������g1\�������#�X���_��_=6������:e)-�.i|Me�m>1�R�Q4�=��1`�SrN^�x��2p.hr��\D���6������������j�/q����\�T�'L6]�cy�0 4�|DA
"����G(E����SN��+�iY�����16%��%��)��p�kK�Wk�����ou�+T�@�.UZ
�ex�U�O~8
�Y����L��t������#��S�)��5zIFZ6�d�e].��| =
�u�u��iwt[���V� � f=�&S��VZ�s�I0u�|M��� �����K�'�7�<y�"7�iw�M#�������t��u�4N���9IgC��n�b�[��"�5�=�F�����n1�^{��7+��:�Z�z�r<.��:�Y��v
��X��b�vZ
�]m��k5{%����Z:�#�-���xk��&��M����yg�}�;+�Y(���tL�E�$^��}���6�T�i��^�#��^!���t�����~G#��V�.�T����~��a�������mpfS<�%��������A����w�}h�gn*,���$���z:Y���o�{tF��@�r���^������[G�0�FbW�Cw�T��td�:
5k��4V�4��+B��pl�,���M��R������-~�m���b�i�X4[�/�E���fh���-��}�r(�1w����hA.b�5T&�_4�����2��[�c�,�������x��B�u�Q���K����:e(K��E�+����xg���1����NZ���U��u&����A�0�G���B�r�V o�<�n�GM��v���@���P�t���e�
Z��6�9�X*h��.�����5�Q�����t2�� ?���0�)/�Z)kc�"tW�>w��g��ZN����������G��Z�-���Vm���� ��=�.0����^-���wr��f����G�*����"q1�A��4�0�_�,�>\�jD�*�S���`�q�"�� ����Q=��iD!�s.qI�?��dJcJ|F<�� ��,M"2��2V��f3��OLC����~G.�{<�Ee��#��������G�j��n�cCt5]�i6F�!f�|�^Sv.
,}������v ���`��3q���A0�bE�v��^.�0��a^]@����0�:'���������1�n`���?f ��
H�-��1Os���H.������l�H���:r�'N\JZP��������f4R%\�r"M}0���� �h��X�C�),I�f���#��j!l����9���P�Z��w����An���J��p�s���HH�O���G��H�:��a������G!��>�p���h0B���p^FQ���3���d
i,0��a0�8<]�1���;h�JS�'8�
q��;��xq����@�
p~��k�@�gt����;u
�gA�G�4k��� F��&+u��?�:�J���g^D_�H�{!����?��
��`�I�J����/�L��W����`�9�����^[��9t�]��%/�}��`��,7 R��;��+�#�.y���]����b�z�$1�A����
�az�t�X�>y�xTb�@��)z�R��E8Y�1�qT�����9{�4�����#��I�G���&
�*����m���w��f�{�M�}�IN��&yC�e��si2���8?u��YQ"����{ )B�[�d�*Wj�X�}�a�%R���Rq�#�X�������*��o������^����T�����z�u_��*���^��w8�a�����X�NP���q��n��5�`��:v��� �����58�����o4��{X�}_�3�%��T��������xo��Lu��7�s9�8�m��c`�4 �
���M��)r�o��"�Q���~��hp�K�cz���K]yyIoh�gX���V�jc��5tg$��3yb ��[l9B������� ��/������/��N�����/i�����p6���\��Dn�8�h�
{��"�D��eS�{�s���0���^�C��vdDNz��#���
���|��O�(f�%�2;���� n��/X�
��SY����
��%�Uc�HE\ $���c����!���_|��A���Y�\�����Pc��I���L��B���p
bX��@����w�$���z� T
�E��x|��8L|��1�]�.��q�B)pm���� �(���\��U,�����q��
p��d�b�\��[�0�W�g�2�x�FY����� �����\���B5�����m�S��QX1������F��}�����-yTJhi� �l0
�GS��I>RxF�J<