임 하나의 열에있는 모든 숫자의 합을 계산하려고합니다.한 열에있는 모든 필드의 합
열 이름은 정수로 된 '단위'입니다.
이것은 작동합니까?
cmd3 = New OleDbCommand("SELECT SUM(Units) FROM tblJobs WHERE BookedOut = NULL AND HoldDate = NULL ", con)
lblLiveUnits.Text = cmd3.ExecuteNonQuery()
감사합니다
임 하나의 열에있는 모든 숫자의 합을 계산하려고합니다.한 열에있는 모든 필드의 합
열 이름은 정수로 된 '단위'입니다.
이것은 작동합니까?
cmd3 = New OleDbCommand("SELECT SUM(Units) FROM tblJobs WHERE BookedOut = NULL AND HoldDate = NULL ", con)
lblLiveUnits.Text = cmd3.ExecuteNonQuery()
감사합니다
조회에서, 당신은 당신이 IS NULL
사용해야 =NULL
뭔가 할 올바른 싶지 않다되지 않습니다
SELECT SUM(Units) As TotalUnits
FROM tblJobs
WHERE BookedOut IS NULL
AND HoldDate IS NULL
그런 다음 코드에서 당신이 ExecuteScalar
를 사용합니다 :
Int32 lblLiveUnits = 0;
cmd3 = New OleDbCommand("SELECT SUM(Units) As TotalUnits FROM tblJobs WHERE BookedOut IS NULL AND HoldDate IS NULL ", con);
lblLiveUnits = cmd3.ExecuteScalar()
빠른 응답을 보내 주셔서 감사합니다! 새로운 코드와 나는이 오류가 발생 알아. 처리되지 않은 'System.Data.OleDb.OleDbException'형식의 예외가 System.Data.dll에서 발생했습니다. 추가 정보 : 쿼리 식의 구문 오류 (누락 된 연산자)가 'OnHold = 1 AND BookedOut IS NULL'입니다. – mjshort
@ user2286005 두 개의'WHERE'가 잘못 나열되었습니다. 다시 시도하십시오 – Taryn
미안 해요 그건 양이었습니다! 올바른 코드와 함께 지금이 오류가 발생합니까? 추가 정보 : 조건 식의 데이터 형식이 일치하지 않습니다. – mjshort
시도해 보셨습니까? – Sajeetharan
ExecuteNonQuery는 결과가 아닌 영향을받는 행의 수를 반환합니다. 쿼리에서 하나의 데이터 항목 만 반환하려는 경우 ExecuteScalar를 사용하십시오. http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executescalar.aspx – GrandMasterFlush