합계 값을 가져 오려고하지만 내가 InvalidCastException을 가져 오는 쿼리가 있습니다.C# MySQL InvalidCastException sum
내 쿼리는 다음과 같습니다
SELECT e.clockNr,e.firstName,e.LastName,e.unionName,i.points
FROM (
SELECT employee.clockNr AS clockNr,
employee.firstName AS firstName,
employee.lastName AS lastName,
Unions.name AS unionName
FROM employee,Unions
WHERE employee.active=1 AND employee.unionId = unions.id
GROUP BY employee.clockNr
) e LEFT JOIN (
SELECT infraction.clockNr AS clockNr,
CAST(SUM(Infraction.points) AS SIGNED) AS points
FROM infraction
WHERE infraction.infractionDate >[email protected]
AND infraction.infractionDate <[email protected]
GROUP BY infraction.clockNr
) i ON e.clockNr = i.clockNr
ORDER BY e.clockNr ASC
그것은 잘못가는 '점'열입니다. CAST를 SIGNED에 추가했는데 도움이되지 않습니다. 또한 시도
int iGetPoints = Convert.ToInt32(reportReader["points"]);
:
내가 칼럼을 읽은 방법은
int iGetPoints = (int)reportReader["points"];
그러나 모두는 InvalidCastException이 인상. 쿼리가 PHPMyAdmin에서 테스트되었고 제대로 작동합니다.
누구나 내가 잘못하고있는 것을 볼 수 있습니까? 아니면 내게 힌트를 줄 수 있습니까?
'points' 컬럼의 데이터 유형은 무엇입니까 –
INT입니다. 난 그냥 문자열로 구문 분석하려고 다음 int로 변환하고 그 어떤 이유로 작동합니다. –