Programación General > Visual Basic 6.0 e inferiores

 Cuantos Hay De X Campo De La Tabla Sent.sql

<< < (3/6) > >>

UserCode:

--- Citar ---donde a.txtuso es el campo txtuso de la tabla principal, no se si esto te enrede?

--- Fin de la cita ---

bueno, TR_CTRL_VEHIC_KM con su campo TxtUso es donde se guardan estos datos, para mi esa es la tabla principal  :unsure: aunque tengo otra tablita llamada TB_USO con un solo campo TxtUso, y otra TB_CONDICION con TxtCondicion, de estas dos ultimas tablas es que los Combobox de la ventana sacan la lista.  Porque esa a del a.txtuso yo la cambie por la misma de siempre  TR_CTRL_VEHIC_KM, será que ahí está la pieza que me falta?  :huh:

Bueno, yo cambie el a.txtuso por TB_USO.TxtUso (en todo donde decira a.txtuso) y me saco error, ese error que a veces salen con las SQL de "se espera 1" o 2.

PD: voy a hacerme un cursito de excel pq como que me hace falta, de SQL pues será a punta de internet pq cursos de SQL no existen donde vivo, me hace falta camino en eso.

F_Tanori:
:lol:

En definitiva te hace falta leer porque estas 'enfrascado' :P, revisa la consulta que viene en el archivo de access que te envie entra en la vista SQL y revisa los datos de la tabla y fijate que todo concuerda por eso es que no entiendo porque tanto problema :P

esa misma instruccion se la pasas al Data y listo :)


te recomiendo una pagina de donde bajar cursos

http://www.lawebdelprogramador.com/cursos/ (no es competencia es apoyo  :ph34r: )

y la puerta de internet www.google.com


--- Código: Text ---FROM TR_CTRL_VEHIC_KM AS a 
esa a es un alias que le puse a la tabla para crear la relacion porque era en la misma tabla y diferenciarla


Suerte

UserCode:
Ahora si :)



Si era la a es que en el primer post no se indico nada de alias y yo vengo y cambie eso por el nombre de la tabla <_<

Probe la SQL que no me daba bien en Access y daba igual de mal, pero tome la del archico Access que me has mandado y ahí simplemente terminando de completar el nombre de un campo... listo! y de vuelta al control en vb y ahora si rula  :smartass:

gracias compadre, ya tome nota de todos sus hilos de todo este asunto y en verdad que me alegra no haber tenido que recurrir a soluciones poco ortodoxas o como se le desea a gusto indicar, pero es bueno encaminarse a probar con como debe ser.

Consulta rules  :kicking:

UserCode:
hola nuevamente, mil disculpas perdonen todos los lectores y más F_Tanori (ahora si lo escribi bien) por alargar la ayuda de la SQL, referente a las siguientes preguntas...

Esa consulta que hace la SQL, como podría hacer una suma de KmRec de la tabla de esta forma:

Toy hecho bolas con eso  :blink:  pq ni idea de como sacar el dato de una palabra reservada (AS TOTAL) de una SQL a un TextBox o Label en la ventana. Perdon por preguntar esto ahora y no antes, pero no lo habia visto bien en el Excel, cuando vi al final ese TOTAL CILINDROS, en seguida me dije.. me lleva la que me trajo :( no pregunte por eso al momento.

Y tambien entre lineas del WHERE de la SQL he metido TR_CTRL_VEHIC_KM.TxtSucursal='NOMBRE_SUCURSAL" AND TR_CTRL_VEHIC_KM.TxtMes='OCTUBRE' AND... el resto normal de la sql

Bueno yo he agregado eso de la Sucursal y el Mes "entre lineas" del WHERE como ya he comentado y pues esta asi:


--- Código: Text --- &#34;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.TxtSucursal='&#34; & SeleccionSucursal & &#34;' AND TR_CTRL_VEHIC_KM.TxtMes='&#34; & SeleccionMes & &#34;'AND TR_CTRL_VEHIC_KM.txtcondicion='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.TxtSucursal='&#34; & SeleccionSucursal & &#34;' AND TR_CTRL_VEHIC_KM.TxtMes='&#34; & SeleccionMes & &#34;' AND TR_CTRL_VEHIC_KM.txtcondicion='TALLER'  AND TR_CTRL_VEHIC_KM.txtuso=a.txtuso) AS TALLER, (SELECT Sum(TR_CTRL_VEHIC_KM.TxtkmRec) FROM TR_CTRL_VEHIC_KM WHERE TR_CTRL_VEHIC_KM.TxtSucursal='&#34; & SeleccionSucursal & &#34;' AND TR_CTRL_VEHIC_KM.TxtMes='&#34; & SeleccionMes & &#34;' AND TR_CTRL_VEHIC_KM.txtuso=a.txtuso) AS KMREC FROM TR_CTRL_VEHIC_KM AS a GROUP BY a.txtuso;&#34;  
Bueno no logre que los nombres en la Columna USO saliesen en base a Sucursal y Mes, pero si los demás campos (menos CANT) sino ACT, TALLER, KMREC en la tabla. Porque por ejemplo siempre salen 8 registros en la grilla, pero yo selecciono una Sucursal y un Mes que deberia dar en la consulta solo 3 registros, pero igual siguen saliendo los 8 aunque ya los demas datos (ACT, TALLER, KMREC) si varian, es decir, si muestran dependiendo de la Sucursal y Mes en la BD.

Una muestra de eso:

Ves, ya es diferente esta de la anterior, aunque sigue saliendo en la columna USO las 8, pero las demas columnas ya variaron, no muestran todo, sino solo al cumplirse tambien en el WHERE la sucursal y Mes. Pero se supone que en esta consulta en vez de 8 filas en USO deberian salir solo 3. Bueno la SQL me daba error al tratar de poner lo del Mes y Sucursal al principio, sea antes o despues entre lineas del SELECT a.txtuso, Count(a.txtuso) AS CANT asi que lo puse luego en lo demas, luego del WHERE

PD: Ya estoy leyendo y descartado algunos manuales SQL y haciendo las pruebas en la sección de Consultas de Access y en el mismo vb.

F_Tanori:
:P

Bueno mira AS TOTAL no es una palabra reservada :P tal vez solo AS pero en realidad es un campo calculado, o un alias del campo y lo puedes tomar como cualquier otro campo

Ej.


--- Código: Text --- Dim TotalTotal=Data1.RecordSet!Total  
Si lo unico que quieres es sumar porque no lo haces ya en el grid?, aun que lo extraño es que.... como la suma de los kilometros recorridos te de el total de cilindros  :huh:


--- Código: Text --- Private Sub SumarColumna_Click()Dim Suma, i  For i = 1 To Me.DataGrid1.ApproxCount    Suma = Suma + Val(Me.DataGrid1.Columns(4).CellValue(i)) Next i Me.Text2 = SumaEnd Sub  
Con respecto a la otra duda.

el where seria a lo ultimo eln la tabla principal (a) ejemplo

(CODE)

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.kmact) FROM TR_CTRL_VEHIC_KM WHERE TR_CTRL_VEHIC_KM.txtuso=a.txtuso) AS KMREC
FROM TR_CTRL_VEHIC_KM AS a
WHERE a.sucursal='NOMBRE_SUCURSAL' AND a.mes='OCTUBRE'
GROUP BY a.txtuso, a.sucursal, a.mes;

(/CODE) :P


Suerte y siguele....  :comp:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa