Dunque ho fatto una prova su un database SQL in rete in azienda in una Tabella contenente circa 42000 record, ovviamente i miei campi sono diversi è il risultato è stato:
primo caso:
	codice:
	 objCommand.CommandText = "SELECT * FROM Misurazioni
            objCommand.CommandType = CommandType.Text
            Dim countTime As Long = System.Environment.TickCount
            objConnection.Open()
            Dim reader As System.Data.SqlClient.SqlDataReader = objCommand.ExecuteReader()
            Dim myVar1 As Integer
            Dim myVar2 As Integer
            Dim myVar3 As Integer
            While reader.Read
                If reader("Turno") = 1 Then
                    myVar1 += reader("Turno")
                ElseIf reader("Turno") = 2 Then
                    myVar2 += reader("Turno")
                ElseIf reader("Turno") = 3 Then
                    myVar3 += reader("Turno")
                End If
            End While
            countTime = System.Environment.TickCount - countTime
 
Tempo medi 1540 ms
Secondo caso:
	codice:
	  objdatadapter.SelectCommand = New SqlCommand
            objdatadapter.SelectCommand.Connection = objConnection
        objdatadapter.SelectCommand.CommandText = "SELECT SUM(turno) FROM Misurazioni WHERE turno=1;SELECT SUM(turno) FROM Misurazioni  WHERE turno=2;SELECT SUM(turno) FROM Misurazioni  WHERE turno=3"
         
        Dim countTime As Long = System.Environment.TickCount
        objConnection.Open()
        objdatadapter.Fill(objdataset, "misure_ricette")
        objConnection.Close()
        Dim myVar1 As Integer
        Dim myVar2 As Integer
        Dim myVar3 As Integer
        myVar1 = objdataset.Tables(0).Rows.Item(0).Item(0)
        myVar2 = objdataset.Tables(1).Rows.Item(0).Item(0)
        myVar3 = objdataset.Tables(2).Rows.Item(0).Item(0)
        countTime = System.Environment.TickCount - countTime
 
Tempo medio 343 ms.
 