���O�t���p�C�v�������Ă݂�

Unix/Linux �ɂ� ���O�t���p�C�v�Ƃ������̂�����܂��B

Unix�h���C���\�P�b�g�̐����Łu���O�t���p�C�v�ɗގ������@�\������`�v�Ə����Ă����� ���܂ʼn��ƂȂ��u�p�C�v�ɖ��O�t�����񂾂ȁv���炢�ɂƎv���Ă܂����� ���ۂɎg�������Ƃ��Ȃ������̂ŁA�����Ă݂܂��B

�g�p����̂� mkfifo �Ƃ����R�}���h�B

$ mkfifo /tmp/namedpipe

����ō쐬�����B

$ ls -l /tmp/namedpipe

prw-rw-r-- 1 xxxxx xxxxx 0 Oct 22 22:06 /tmp/namedpipe

�Ȃ񂩂ł��Ă܂��� �����̐擪�� "p" �ɂȂ��Ă܂��B

�@�\�͂Ȃ�ƂȂ��z���ł��܂��ˁB

������m�F���邽�߂ɁA �܂��ʂ̃R���\�[���� ���̖��O�t���p�C�v�� tail ���܂��B

$ tail -f /tmp/namedpipe

�ҋ@��ԂɂȂ�܂����B

tail ���Ă���R���\�[���Ƃ͕ʂ̃R���\�[���� ���O�t���p�C�v�Ɍ������ă��_�C���N�g���Ă݂܂��B

$ echo test1 > /tmp/namedpipe
$ echo test2 > /tmp/namedpipe

tail ���Ă���R���\�[������ �o�͂���Ă����܂��B

$ tail -f /tmp/namedpipe

test1
test2

�Ȃ�قǁA���ڂ‚Ȃ����Ă��Ȃ��Ă� ���O�t���p�C�v��ʂ��ăf�[�^���A�g�ł��Ă܂��ˁB

rm �R�}���h�ō폜�ł��܂��B

$ rm /tmp/namedpipe

�����܂ł��ƁA�قڒʏ�̃t�@�C�����g���Ă������悤�Ȃ��Ƃ��ł��܂��� �󂯑��� tail ���Ă��Ȃ���ԂŃ��_�C���N�g����� �ʏ�̃t�@�C���Ƃ͈Ⴄ�����ɂȂ�܂����B

$ echo test3 > /tmp/namedpipe

�󂯑��� ���O�t���p�C�v�� tail ���Ă��Ȃ��Ƃ��̏�Ԃ� ���_�C���N�g����� ���_�C���N�g���������ҋ@��ԂɂȂ�܂��B

�󂯑��� ���O�t���p�C�v�� tail �� cat �Ȃǂ���� ���_�C���N�g���̑ҋ@����������܂��B

$ cat /tmp/namedpipe

test3

�֗��Ɏg����P�[�X�͂��肻���ł��ˁB

Windows10 �� �R�}���h�v�����v�g�ŋ�`�I������

�����ł��B

�ȑO�́A�R�}���h�v�����v�g�́u�ȈՕҏW�v���L���ɂȂ��Ă���� ��`�I���ł��Ă����̂ł����A Windows10 �ɂȂ������߂� �ł��Ȃ��悤�ɂȂ��Ă��܂����B

WRITE_0964_01

Windows10 �� �R�}���h�v�����v�g �ł� [Alt] �������Ȃ���I������Ƌ�`�I���ł����B

WRITE_0964_02

PostgerSQL ARRAY_AGG �� �� Oracle �� LISTAGG

PostgreSQL �ɂ� �s�� �z��ɕς��� ARRAY_AGG �Ƃ����֐�������܂��B ����Ɣz��𕶎���ɕς��� ARRAY_TO_STRING ��g�ݍ��킹�邱�Ƃ� �s���J���}��؂�Ȃǂ̕�����ɂ��邱�Ƃ��ł��܂��B

�Ⴆ�� ����ȃe�[�u���ɑ΂��āD�D�D

db=# SELECT id, name FROM fruit;

 id |  name
----+--------
  1 | ���
  2 | �݂���
  3 | �Ԃǂ�

���̂悤�Ȍ��ʂ𓾂邱�Ƃ��ł��܂��B

db=# SELECT ARRAY_TO_STRING(ARRAY_AGG(name order by id), ',') AS names FROM fruit;

        names
----------------------
 ���,�݂���,�Ԃǂ�

����� Oracle �łȂ�Ƃ��ł��Ȃ��Ǝv���Ă�����ł��� Oracle�ł�11g R2 ���� LISTAGG �Ƃ����֐����lj�����Ă��܂����B

SQL> SELECT LISTAGG(name, ',') WITHIN GROUP (order by id) AS names FROM fruit;

        names
----------------------
 ���,�݂���,�Ԃǂ�

LISTAGG �֐��� ARRAY_AGG + ARRAY_TO_STRING �̂悤�ȓ��������܂��B

Google �T�C�g������

Amazon�A�\�V�G�C�g