Recordset SQL VB
Hola a todos
Estoy haciendo una practica para la universidad y tengo el siguiente problema con este select y el recordset:
select nom_equip, count(numero), avg(import_fitxa) from equips, futbolistes, nacionalitat
where futbolistes.codi_equip = equips.codi_equip
and codi_nac = codi_nacionalitat
and num_llic_federativas > :valor
group by nom_equip
order by avg(import_fitxa);
Como ven el select me devolvera 3 columnas, una es el nombre de un atributo, pero las otras 2 son funciones de agrupamiento (o como les quieran decir) y no se como acceder a ellas mediante un recordset. Ejemplo, para el atributo nom_equip haria
Dim rs As Recordset
Set rs = conEditores.OpenRecordset("<el select>")
rs.MoveFirst
'Para acceder a nom equip perfecto
List1.AddItem ( CStr(rs!nom_equip))
'PERO!!!!!!!PARA ACCEDER AL COUNT???
List1.AddItem ( CStr(rs!count(numero)))
...
numero es un atributo de la tabla futbolistes, pero VB cree que es una variable y no me deja hacer nada.
Como puedo acceder a este dato del recordset, cuando son funciones como count, avg, max, min, o lo que sea...
Gracias
Estoy haciendo una practica para la universidad y tengo el siguiente problema con este select y el recordset:
select nom_equip, count(numero), avg(import_fitxa) from equips, futbolistes, nacionalitat
where futbolistes.codi_equip = equips.codi_equip
and codi_nac = codi_nacionalitat
and num_llic_federativas > :valor
group by nom_equip
order by avg(import_fitxa);
Como ven el select me devolvera 3 columnas, una es el nombre de un atributo, pero las otras 2 son funciones de agrupamiento (o como les quieran decir) y no se como acceder a ellas mediante un recordset. Ejemplo, para el atributo nom_equip haria
Dim rs As Recordset
Set rs = conEditores.OpenRecordset("<el select>")
rs.MoveFirst
'Para acceder a nom equip perfecto
List1.AddItem ( CStr(rs!nom_equip))
'PERO!!!!!!!PARA ACCEDER AL COUNT???
List1.AddItem ( CStr(rs!count(numero)))
...
numero es un atributo de la tabla futbolistes, pero VB cree que es una variable y no me deja hacer nada.
Como puedo acceder a este dato del recordset, cuando son funciones como count, avg, max, min, o lo que sea...
Gracias
Cambia la SQL para utilizar alias en lugar de los nombres de los campos:
select nom_equip, count(numero) As Num, avg(import_fitxa) as Media from equips, futbolistes, nacionalitat
Luego haces referencia al alias en lugar del campo:
List1.AddItem ( CStr(rs!num))
y ya está.
Salduos!!
l_island
select nom_equip, count(numero) As Num, avg(import_fitxa) as Media from equips, futbolistes, nacionalitat
Luego haces referencia al alias en lugar del campo:
List1.AddItem ( CStr(rs!num))
y ya está.
Salduos!!
l_island
Gracias I_Island!!!
Habia pensado en utilizar alias, pero en SQL los alias son " " y no me servian. Ahora que se que se hace con el As ya esta
Nuevamente muchas gracias
Habia pensado en utilizar alias, pero en SQL los alias son " " y no me servian. Ahora que se que se hace con el As ya esta
Nuevamente muchas gracias
Una cosa mas:
Estoy haciendo una actualizacion de la base de datos
Tengo dos controles Text, uno para la clave primaria y el otro para el nuevo valor, y luego un List con los campos de la tabla, para elegir que campo queremos actualizar. Mi problema es parecido al anterior
Cuando quiero hacer
rs.Update
rs!CStr(List1.Text) = Text2.Text 'ERROR!!!!
Yo ya lo suponia, el VB me da error dice que el Recordset rs no tiene ningun miembro CStr lo ke sea...
Alguna idea???
Gracias
Estoy haciendo una actualizacion de la base de datos
Tengo dos controles Text, uno para la clave primaria y el otro para el nuevo valor, y luego un List con los campos de la tabla, para elegir que campo queremos actualizar. Mi problema es parecido al anterior
Cuando quiero hacer
rs.Update
rs!CStr(List1.Text) = Text2.Text 'ERROR!!!!
Yo ya lo suponia, el VB me da error dice que el Recordset rs no tiene ningun miembro CStr lo ke sea...
Alguna idea???
Gracias
