�A�v���P�[�V�����J���Ńf�[�^�x�[�X�𗘗p����V�l�v���O���}�Ɍ����āASQL�����T-SQL��Z���Ԃŗ����ł���悤�A�J������ł����ɕK�v�ƂȂ���e�𒆐S�ɉ������B�i�ҏW���j
���̋L���͉������ł��B����o�^�i�����j����ƑS�Ă������������܂��B
��ȓ��e
�@�@�@--Page 1--
���O���[�v���������ʂ��i�荞��HAVING��
��WHERE���HAVING��̈Ⴂ
�@�@�@--Page 2--
��HAVING��ŃO���[�v���������ʂ��i�荞��
��HAVING��Ƙ_�����Z�q�̑g�ݍ��킹
�@�@�@--Page 3--
��HAVING��𗘗p����ۂ̒��ӓ_
���܂Ƃ�
�@��5����}�����{�A�ڂł����A�ߋ�4��̘A�ڂ��o�ē��e�����X�ɔZ���Ȃ��Ă��܂����B�P����SELECT������n�܂�A���̗��p�A�O���[�v���ɂ��W�v�Ȃǂ�����܂łɎ��グ�Ă��܂��B����́A�O����グ���uGROUP BY�v��ɂ��O���[�v���@�\�̗���������ɍ��߂�uHAVING�v������グ�܂��B
�@HAVING��𗘗p����ƁAGROUP BY��ɂ���ăO���[�v�����ꂽ�f�[�^�ɑ��A�����������w�肵�i�荞�ނ��Ƃ��\�ł��B�i�荞�݂Ƃ����uWHERE�v����i�荞�݂��s���܂����AWHERE��̓O���[�v�����ꂽ�f�[�^�ɑ��či�荞�݂��s�����Ƃ͂ł��܂���BWHERE���GROUP BY��p�����ꍇ�AWHERE �� GROUP BY�̏��ŃN�G�����]������邽�߁A�O���[�v�����ꂽ���ʂ�WHERE��̒i�K�ŗ��p�ł��Ȃ��̂ł��B
�@���̖��ɑ��AHAVING���GROUP BY��𗘗p�����ꍇ�AGROUP BY �� HAVING�̏��ŃN�G�����]������A�O���[�v�����ꂽ���ʂɑ��������w�肷�邱�Ƃ��\�ł��B
�@HAVING��͎��̂悤�ɋL�q���܂��i[ ]�J�b�R�͏ȗ��\�ł��邱�Ƃ������܂��j�B
SELECT �� FROM �\�� [WHERE ����] GROUP BY �� HAVING ����
�@�ł͎��ۂ̓��������Ȃ���AHAVING��𗘗p���Ă݂܂��傤�B
�@�T���v���f�[�^�x�[�X��AdventureWorks�Ɋ܂܂��SalesOrderHeader�e�[�u���𗘗p����SQL�̔��s���s���܂��傤�B�܂���GROUP BY��𗘗p���Čڋq���Ƃ̕��ώz�����߂܂��B
SELECT CustomerID,AVG(TotalDue) AS ���ώx���z FROM Sales.SalesOrderHeader GROUP BY CustomerID ���� CustomerID ���ώx���z ----------- --------------------- 14324 1886.3927 22814 5.514 11407 59.659 �c�����c 24886 88.9194 21640 136.9758
�@��L�̌��ʂ̂����A���ώx���z��1000�ȏ�̌ڋq�����߂Ă݂܂��傤�B��L��SQL�ɑ��A�u���ώx���z��1000�ȏ�v�Ƃ���������������悢���ƂɂȂ�܂��B�������Ȃ���A�P����WHERE��ɉ����Ă��܂��ƃG���[�ɂȂ��Ă��܂��܂��B
SELECT CustomerID,AVG(TotalDue) AS ���ώx���z FROM Sales.SalesOrderHeader WHERE AVG(TotalDue) >= 1000 GROUP BY CustomerID ���� ���b�Z�[�W 147�A���x�� 15�A��� 1�A�s 1 �W�v��HAVING��܂��͑I�����X�g���̃T�u�N�G���ɂ���ꍇ�A����яW�v����O���Q�Ƃ̏ꍇ�ɂ����AWHERE��ɏW�v���܂߂邱�Ƃ��ł��܂��B
�@WHERE��ɂďW�v���ł���AVG���̌��ʂɑ��ď������w�肵�Ă��܂����A���s���ʂ̓G���[�ƂȂ�܂��BSQL���̕]����WHERE��AGROUP BY��̏��ōs���邽�߁AGROUP BY��ɂ��O���[�v���������ʂ𗘗p����W�v���ɑ���WHERE��ɂ������w����s�����Ƃ͂ł��Ȃ����߂ł��B
Copyright © ITmedia, Inc. All Rights Reserved.