- Tema Autor
- #1
Buenas tardes estimados bakunos.!
El dia de hoy acudo a ustedes por que estoy desarrollando una pequeña aplicacion web basada en php y mysql y me encontre con el siguiente problema.. (la aplicacion es sobre unas tarjetas de regalo que distribuire en varias tiendas)
Tengo una table tarjeta_
id_
folio_
vendidaen_
monto_
fecha_
ca_
Otra tabla tienda_
id_
nombre_
Y otra tabla tarjeta_canjeada
id_
folio_
candeajaen_
fecha_
Hasta aqui todo bien mi problema es que necesito tirar unos reportes que me den esta informacion:
folio_ | fecha_ | vendidaen_ | monto_ | canjeadaen_ | fecha
Mi problema radica en que cuando quiero que tanto en vendidaen_ como en canjeadaen_ aparesca el nombre de dichas tiendas.. es nomas no me da el resultado...
Les pongo la sentencia que tengo... no soy muy diestro en join, inner join, left join... pero estoy 100% seguro que con una sentencia de este estilo se soluciona.. agradezco su apoyo... y espor que alguien se compadesca de mi...
select folio_, nombre_, vendidaen_, monto_, fecha_, estatus_
from tarjeta, tienda
where estatus_ = '$criterio' and fecha_ between '$finicio' and '$ffin'
and tarjeta.vendidaen_ = tienda.id_
Esto me aroja el listado de las tarjetas activadas en un rango de fechas.. pero cuando quiero sacar tambien en el mismo renglon si fue canjeada y la fecha ahi me atoro..
select t1.folio_, t1.vendidaen_, t1.fecha_, t3.nombre_, t1.estatus_, t2.fecha_ as fecha2, t2.canjeadaen_
from tbl_tarjeta t1
inner join tbl_tarjeta_canjeada t2 on (t1.folio_= t2.folio_)
left join tbl_tienda t3 on (t1.vendidaen_ = t3.id_)
where t1.fecha_ between '2013/07/10' and '2013/07/10'
No se si ya me lie mucho.. pero ya no le hayo ni para adelante ni para atras..!!
Gracias de antemano.
El dia de hoy acudo a ustedes por que estoy desarrollando una pequeña aplicacion web basada en php y mysql y me encontre con el siguiente problema.. (la aplicacion es sobre unas tarjetas de regalo que distribuire en varias tiendas)
Tengo una table tarjeta_
id_
folio_
vendidaen_
monto_
fecha_
ca_
Otra tabla tienda_
id_
nombre_
Y otra tabla tarjeta_canjeada
id_
folio_
candeajaen_
fecha_
Hasta aqui todo bien mi problema es que necesito tirar unos reportes que me den esta informacion:
folio_ | fecha_ | vendidaen_ | monto_ | canjeadaen_ | fecha
Mi problema radica en que cuando quiero que tanto en vendidaen_ como en canjeadaen_ aparesca el nombre de dichas tiendas.. es nomas no me da el resultado...
Les pongo la sentencia que tengo... no soy muy diestro en join, inner join, left join... pero estoy 100% seguro que con una sentencia de este estilo se soluciona.. agradezco su apoyo... y espor que alguien se compadesca de mi...
select folio_, nombre_, vendidaen_, monto_, fecha_, estatus_
from tarjeta, tienda
where estatus_ = '$criterio' and fecha_ between '$finicio' and '$ffin'
and tarjeta.vendidaen_ = tienda.id_
Esto me aroja el listado de las tarjetas activadas en un rango de fechas.. pero cuando quiero sacar tambien en el mismo renglon si fue canjeada y la fecha ahi me atoro..
select t1.folio_, t1.vendidaen_, t1.fecha_, t3.nombre_, t1.estatus_, t2.fecha_ as fecha2, t2.canjeadaen_
from tbl_tarjeta t1
inner join tbl_tarjeta_canjeada t2 on (t1.folio_= t2.folio_)
left join tbl_tienda t3 on (t1.vendidaen_ = t3.id_)
where t1.fecha_ between '2013/07/10' and '2013/07/10'
No se si ya me lie mucho.. pero ya no le hayo ni para adelante ni para atras..!!
Gracias de antemano.