생년월일의 연도가 1992 이거나 1991인 행만을 표시하시오(year,and 함수사용).
이문제인데요
왜 부등호를 >= 로 지정하는지 모르겠습니다
제가 낸 답 : and(year(생년월일)=1991,year(생년월일)=1992)
이게 왜오답이죠
아그리고
고급필터에서
식을이용한조건을사용했을때
false로 나오면 조건지정한게 틀려서 답이 못나온다는소리인가요?
아니면 false로나와도 맞게되는경우도잇는지요?
and 연산자 때문입니다.
and 는 ~이고 ~인 인데
and(year(생년월일)=1991,year(생년월일)=1992)
와 같이 사용하시면 1991년 이고 1992 년 인 것이 됩니다.
그런데 1991 년 이고 1992 년 인 데이터는 없기 때문이죠.
그래서
and(year(생년월일)>=1991,year(생년월일)<=1992)
1991년 이상이고 1992년 이하인 으로 지정하셔야 1991년과 1992년에 해당하는 값을 구할 수 있습니다.
식을 이용하여 조건을 지정하면 false와 true 로 값이 나옵니다.
필드명을 원본 데이터에 있는 필드명을 사용하게 되면
false 라는 값과 원본 데이터를 비교하게 되는데
만약 이름 이라는 값과 비교한다면
이름
시나공
길벗
이라는 데이터가 있고 식을 사용한 경우
이름
false
로 지정되는데 이름이라는 원본 필드에 false 라는 값이 없기 때문에 결과가 나오지 않게 됩니다.
그러므로
조건
false
와 같이 원본 데이터에 없는 필드명을 사용하여 가상의 필드를 만들어 놓고 true에 해당하는 행만 필터해 오게 하는 것이죠.
좋은 하루 되세요.
"-
*2013-11-17 12:39:29
and 연산자 때문입니다.
and 는 ~이고 ~인 인데
and(year(생년월일)=1991,year(생년월일)=1992)
와 같이 사용하시면 1991년 이고 1992 년 인 것이 됩니다.
그런데 1991 년 이고 1992 년 인 데이터는 없기 때문이죠.
그래서
and(year(생년월일)>=1991,year(생년월일)<=1992)
1991년 이상이고 1992년 이하인 으로 지정하셔야 1991년과 1992년에 해당하는 값을 구할 수 있습니다.
식을 이용하여 조건을 지정하면 false와 true 로 값이 나옵니다.
필드명을 원본 데이터에 있는 필드명을 사용하게 되면
false 라는 값과 원본 데이터를 비교하게 되는데
만약 이름 이라는 값과 비교한다면
이름
시나공
길벗
이라는 데이터가 있고 식을 사용한 경우
이름
false
로 지정되는데 이름이라는 원본 필드에 false 라는 값이 없기 때문에 결과가 나오지 않게 됩니다.
그러므로
조건
false
와 같이 원본 데이터에 없는 필드명을 사용하여 가상의 필드를 만들어 놓고 true에 해당하는 행만 필터해 오게 하는 것이죠.
좋은 하루 되세요.
"