Programación General > Visual Basic 6.0 e inferiores
Cuantos Hay De X Campo De La Tabla Sent.sql
UserCode:
Hola a todos
No sé a quien preguntarle esto, asi que lo pregunto en foros,solocodigo para saber su opinion sobre de que forma podría hacer lo siguiente...
Tengo un archivo en Excel de algo que alguien me pidio el favor de hacerselo a programa (ahi es donde entro yo con el vb). En la imagen se ven 3 cuadrillas, en la primera se repiten nuevamente las primeras 6 columnas, porque es por Sucursal y Mes, y ya le hice una ventanita a eso en VB para llenar esos datos, el cual es la segunda imagen que pongo.
Mi dilema es la ultima cuadrilla o recuadro, la cual si se fijan, es un conteo de la primera cuadrilla. Yo tengo una Tabla en Access con campos de la primera cuadrilla, lo que no sabría bien es como realizar una consulta SQL que me cuente lo que refleja la ultima cuadrilla o recuadro, la que dice RESUMEN POR USO Y CONDICION.
Por medio de un boton en la ventana, yo cargo otra ventana con un MSFlexGrid que deberia mostrar lo mismo que ese ultimo recuadro, sus datos en base a la sentencia SQL. Enlace la grilla a un control Data Dao e intente probar con algo como esto:
--- Código: Text --- Data1.DatabaseName = App.Path & "\BDVehiculos.mdb"Data1.RecordSource = "Select Count(TxtUso) From TR_CTRL_VEHIC_KM Where TxtUso = 'AVANCE'"
Siempre he usado sentencias SQL sencillas, y cualquier cálculo lo hago por código del vb pero esta vez deseo poderlo hacer por medio de sentencias SQL, pero no tengo mucha idea clara de como hacer esto.
Que me aconsejan que pueda hacer para poder arrojar en una rejilla algo como lo expuesto en este post :huh:
muchas gracias por tu tiempo amigo.
PD: Me falto un dato en la ventana KM ACT pero ya lo arreglo :comp: mil perdones se me paso.
UserCode:
La grilla me muestra o me arroja una sola columna con esto:
--- Código: Text --- Data1.RecordSource = "Select Count(TxtUso) From TR_CTRL_VEHIC_KM Where " & _ "TxtUso = 'AUTOGAS' and TxtUso = 'AVANCE' and TxtUso = 'DOMICILIO' and " & _ "TxtUso = 'FLETERO' and TxtUso = 'MIXTAS'"
Como le haria para que me mostrara la grilla con las 5 columnas de dato :(
sé que es solo un comienzo, pero es para ver si es posible o no formar tal consulta.
F_Tanori:
--- Cita de: "UserCode" --- La grilla me muestra o me arroja una sola columna con esto:
--- Código: Text --- Data1.RecordSource = "Select Count(TxtUso) From TR_CTRL_VEHIC_KM Where " & _ "TxtUso = 'AUTOGAS' and TxtUso = 'AVANCE' and TxtUso = 'DOMICILIO' and " & _ "TxtUso = 'FLETERO' and TxtUso = 'MIXTAS'"
Como le haria para que me mostrara la grilla con las 5 columnas de dato :(
sé que es solo un comienzo, pero es para ver si es posible o no formar tal consulta.
--- Fin de la cita ---
para usar funciones agregadas de SQL (count,sum,max etc..) nesecitas agrupar... por ejemplo:
"Select Count(TxtUso),condicion,kim_ant,km_act From TR_CTRL_VEHIC_KM Goup by TxtUso"
que es lo que deseas mostrar?
:)
UserCode:
--- Citar ---que es lo que deseas mostrar?
--- Fin de la cita ---
hehehe... lo que está arriba, el ultimo recuadro del excel en base al primero :P
Bueno yo lo único que le puse a la sentencia fue varios Count, asi si me saco las demas celdas pero al meterle datos en la ventana, no me arroja nada, puros 0 jejeje...
Pero hasta ahora no he logrado hacerlo <_<
Gracias por el dato de agrupar, no sabia, la sentencia que pones no sé aun como acomodarla porque hay una parte que no me sirve y pongo en negrita:
"Select Count(TxtUso),condicion,kim_ant,km_act From TR_CTRL_VEHIC_KM Goup by TxtUso"
en mi caso seria sin lo que está en negrita, asi:
"Select Count(TxtUso) From TR_CTRL_VEHIC_KM Goup by TxtUso"
pero desde luego, que eso asi no me sirve, creo que un problema principal es la misma tabla, voy a ver que hago :unsure:
F_Tanori:
Parece que ya entendi :P
el excel no tiene nada que ver... solo es la informacion final que quieres lograr pero ya todo esta en access... ¿o no? :unsure:
segun veo en el consentrado de abajo solo muestra la cantidad de vehiculos de cada tipo (count que ya hiciste) ahora la segunda columna cuanta las unidades activas de cada 'uso', luego cuanta cuales estan en taller, y la suma de los km recorridos estoy bien?
bueno puedes hacer ....
--- Citar ---con estos campos la probe
tabla
------------------
txtuso
cond
kmrec
--- Fin de la cita ---
--- Código: Text --- SELECT a.txtuso, Count(a.txtuso) AS CANT, (SELECT Count(TR_CTRL_VEHIC_KM.txtuso) FROM TR_CTRL_VEHIC_KM WHERE TR_CTRL_VEHIC_KM.cond="Activa" AND TR_CTRL_VEHIC_KM.txtuso=a.txtuso) AS ACT, (SELECT Count(TR_CTRL_VEHIC_KM.txtuso) FROM TR_CTRL_VEHIC_KM WHERE TR_CTRL_VEHIC_KM.cond="Taller" AND TR_CTRL_VEHIC_KM.txtuso=a.txtuso) AS TALLER, (SELECT sum(TR_CTRL_VEHIC_KM.kmrec) FROM TR_CTRL_VEHIC_KM WHERE TR_CTRL_VEHIC_KM.txtuso=a.txtuso) AS KMRECFROM TR_CTRL_VEHIC_KM AS aGROUP BY a.txtuso;
que es una consulta con tres subconsultas para contar las dos condiciones (Activa y Taller, y poder sumar los kms :) )
Espero que te sirva de algo
Suerte!
Navegación
[#] Página Siguiente
Ir a la versión completa