SELECT COUNT(*) FROM area
WHERE ROUND(SQRT(POWER(('71' - coords_x), 2) +
POWER(('97' - coords_y), 2))) <= 17
==> 51
SELECT COUNT(*) FROM area
WHERE ROUND(SQRT(POWER((71 - coords_x), 2) +
POWER((97 - coords_y), 2))) <= 17
==> 22
coords_x 및 coords_y는 둘 다 [1, 150] 범위의 값을 포함하는 TINYINT 필드입니다. 보통 MySQL은 숫자가 인용되는지 아닌지는 신경 쓰지 않지만 분명히이 경우에 나온다.선택 쿼리의 계산에 영향을 미치는 작은 따옴표
질문은 단지 이유가 무엇입니까?
또 다른 질문은 다음과 같습니다. 왜 숫자를 문자열처럼 취급하고 싶습니까? – Cosmin
나는 그 이유를 알 수는 없지만 조금 뒤집어 볼 수도있다 ... WHERE 절에서 비교하려고하는 값을 선택하고 두 경우 모두 값이 무엇인지 살펴볼 수있다. –