2013-03-28 7 views
0

Varchar를 INT로 변환해야하는 쿼리가 있습니다. Iam은 현재 문제가 있다고 생각하지 않기 때문에 현재 쿼리 자체를 게시하지 않습니다.오류 varchar를 Int로 변환 - 서버의 Sql 대 로컬 PC의 SQL

서버 SQL 파일의 백업을 사용하여 가정용 PC에서 쿼리를 설정했습니다. 두 대의 컴퓨터에 Server 2008 R2를 설치했습니다.

쿼리는 내 PC에서 100 % 실행되지만 서버에서 실행할 때 varchar를 INT로 변환하는 동안 오류가 발생합니다.

어쩌면 같은 어딘가에 설정이 있다고 추측 할 수 있습니까? 지역 설정을 확인했는데 문제가 없습니다. 어떤 아이디어?

답변

1

문제는 쿼리가 평가되는 방식에 있습니다. 당신은 질의의 어떤 부분이 평가 될지 아무런 보증이나 보장이 없기 때문에 한 컴퓨터에서 변환 후에 필터가 일어날 수 있습니다. 또는 WHERE 절 조건을 다른 순서로 평가할 수 있습니다.

SQL은 절차 적이 아니라 선언적입니다. SQL을 사용하여 원하는 것을 물어 보면 쿼리 최적화 프로그램이 어떻게 적합한지를 인식하게됩니다. 절차 언어 (C#, Java 등)에서는 실행 순서를 제어 할 수 있습니다.

이유는 여기에 설명되어 있습니다. Why use Select Top 100 Percent?