Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-07-2007
Avatar de taru
taru taru is offline
Miembro
 
Registrado: jul 2006
Posts: 27
Poder: 0
taru Va por buen camino
SELECT dificil

tengo una tabla tickets en ella guardo
id, numero, desc_producto, cliente, cantidad, precio, cabecera, idcabecera
en realidad guardo mas cosas pero para el caso esto es lo que nos biene bien conocer.
lo de cabecera es o 1 ó 0 dependiendo si es una venta o un conjunto de unas cuantas ventas, es decir, cuando yo hago un ticket creo un registro en la tabla donde guardo el nombre del cliente (cliente) y el precio todal, y ademas pongo cabecera a 1 (porque esta seria la cabecera) y luego meto en la tabla por cada uno de los productos que tenga este ticket un registro con los datos del producto y su precio. pero lo hago de manera que el id del ticket cabecera quede almacenado en cada uno de los productos que lleva este ticket. Espero haberme explicado.

Bueno el problema esque ahora quiero hacer un select de manera que me cree una tabla donde tenga el nombre del producto, su precio, el nombre del cliente que lo compro. El problema esta enque el producto y su precio estan guardados en los registros que no son cabecera y el cliente en los que si. Como hago con el SELECT para que me cree esta tabla con los 3 campos sabiendo que en los tickets que no son cabecera guardo el id del que si es cabecera?.

Por ejemplo:

id numero desc_producto cliente cantidad precio cabecera idcabecera
1 1 manolo 50,00 1
2 calcetines blancos 2 10,00 0 1
3 camiseta 3 10,00 0 1
4 2 pepe 700,00 1
5 trompeta 5 100,00 0 4
6 caja 2 100,00 0 4

queda mal pero podeis ver este ejemplo.
http://www.subir-imagenes.com/ver_imagen.php?img=130419

Última edición por taru fecha: 27-07-2007 a las 10:41:06.
Responder Con Cita
  #2  
Antiguo 27-07-2007
Mick Mick is offline
Miembro
 
Registrado: may 2003
Posts: 405
Poder: 22
Mick Va por buen camino
Necesitas hacer un join de la tabla consigo misma:

http://www.desarrolloweb.com/articulos/2355.php


Saludos
Responder Con Cita
  #3  
Antiguo 27-07-2007
Avatar de taru
taru taru is offline
Miembro
 
Registrado: jul 2006
Posts: 27
Poder: 0
taru Va por buen camino
Gracias por responder pero mira la que pone como resultado de las consulta:

consulta SQL:
SELECT cliente, desc_producto, pvp, fecha
FROM ticket
INNER JOIN ticket ON ticket.id = ticket.idticket
LIMIT 0 , 30;


MySQL ha dicho:
#1066 - Not unique table/alias: 'ticket'
Responder Con Cita
  #4  
Antiguo 27-07-2007
Avatar de taru
taru taru is offline
Miembro
 
Registrado: jul 2006
Posts: 27
Poder: 0
taru Va por buen camino
GRACIAS.
SOLUCIONADO ....

SELECT *
FROM ticket AS ticketcabecera
INNER JOIN ticket ON ticketcabecera.id = ticket.idticket;


lo que no se es como lo tendria que haber hecho para coger unos campos de la tabla en vez de todos con *;

Última edición por taru fecha: 27-07-2007 a las 11:28:18.
Responder Con Cita
  #5  
Antiguo 27-07-2007
Mick Mick is offline
Miembro
 
Registrado: may 2003
Posts: 405
Poder: 22
Mick Va por buen camino
Cita:
Empezado por taru
GRACIAS.
SOLUCIONADO ....

SELECT *
FROM ticket AS ticketcabecera
INNER JOIN ticket ON ticketcabecera.id = ticket.idticket;


lo que no se es como lo tendria que haber hecho para coger unos campos de la tabla en vez de todos con *;
SELECT ticket.id, ticketcabecera.cliente FROM etc, ....
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consulta Dificil muli SQL 5 27-10-2006 14:20:43
Una consulta dificil noshy SQL 3 22-05-2006 18:22:06
Consulta Dificil Abel Garcia Firebird e Interbase 5 18-11-2005 19:40:50
Problema conuna consulta select...not in (select ...) VRO Firebird e Interbase 2 11-08-2005 08:56:35
5 select de 5 tablas diferentes en un select solo sakuragi SQL 6 15-06-2005 18:57:06


La franja horaria es GMT +2. Ahora son las 07:23:55.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi