목표 : 사용자 ID와 SiteID가 일치하는 데이터베이스는 사용자 ID와 SiteID가 일치하면 세부 정보를 볼 수 있습니다.SQL Select Count WHERE 절로
생각 : Count (Distinct ...)를 사용하여 존재하는지 확인해 보았습니다. 그런 다음 0이 아닌 값을 반환하면 세부 사항을 볼 수 있음을 알게됩니다.
가장 좋은 방법입니까?
문제 :이 방법을 사용하려고하면 WHERE 절을 사용할 수 없습니다.
오류 : 재생 한 오류는 본질적으로 WHERE 절을 가질 수 없다고 말합니다. 정확합니까?
코드 : 쿼리에 where
절에 아무 문제가 없습니다
Dim ConnectionString As String = System.Configuration.ConfigurationManager.ConnectionStrings("mySQL").ToString()
Using connection = New SqlConnection(ConnectionString)
Using command As New SqlCommand("Select Count(Distinct(UserID)) FROM tblTable where UserID= '" & Session.Item("UserID").ToString & "'", connection)
connection.Open()
Dim result = command.ExecuteScalar()
lblResult.Text = result
connection.Close()
End Using
End Using
나는 당신이 실행하려고하는 쿼리를 빌드하기 위해'string' 변수를 선언 할 것이다. 그런 다음 이것을 디버깅 목적으로 사용할 수 있습니다. –
이 쿼리에 어떤 오류가 있습니까? 사용중인 db는 무엇입니까? –
참고 사항 : 전체 SQL 문자열 (SQL 주입, 성능)을 빌드하는 것이 아니라 매개 변수가있는 쿼리를 사용해야합니다. –