MySQL Forums
Forum List  »  Spanish

Re: Group_Concat columna que devuelve varios valores
Posted by: Hugo Gsell
Date: May 09, 2020 08:56AM

El problema es que articulolistaprecio.precio esta en otra tabla, y puede haber 0,1 o n precios para cada producto (depende de codlistaprecio) y cada precio distinto del mismo articulo debe mostrase en una columna distinta.
Puede que en el ejemplo que pase no haya 2 precios para un mismo producto pero lo mismo me pasaba con codigos (codigo, codigo2) en el caso de los codigos me funciono a la perfeccion...
esto es, generalizando y cambiando un poco los nombres

tabla articulos
tabla tipocodigo
tabla articulotipocodigo
tabla listaprecio
tabla articulolistaprecio

tabla codigos: CodigoBarra, codigofabrica
tabla listaprecio: preciomayorista, precio minorista

1 articulo puede tener 0, 1 ó n registros e

TABLAS BASE
tabla articulo
+---------+----------------+
| IdArt | NombreArt |
+---------+----------------+
| 1 | HARINA |
| 2 | ARROZ |
| 3 | FIDEO |
+--------------------------+

taba tipocodigo
+------------------------+
| IdCod | NombreCodigo |
+------------+-----------+
| 1 | CODIGO BARRA |
| 2 | CODIGO FABRICA |
+------------------------+

tabla listaprecio
+----------------------------+
| IdLista | NombreLista |
+----------------------------+
| 1 | PRECIO MAYORISTA |
| 2 | PRECIO MINORISTA |
+----------------------------+

tabla articulotipocodigo (relaciona un registro de tabla artículo con un registro de tabla tipocodigo)
puede haber 0,1,2 registros asociados o sea 1 producto puede no tener codigo por ej el articulo 3 no tiene ningun tipo de codigo asociado en este ejempl el articulo idart=1 tiene 2 codigos, el idart=2 1 codgio y el idart no tiene ninguno
+------------------------+
|IdArt|IdLista | codigo |
+------------+-----------+
| 1 | 1 | 000111 |
| 1 | 2 | aaabbb |
| 2 | 1 | 222333 |
+------------------------+

tabla articulolistaprecio (relaciona un registro de tabla artículo con un registro de tabla listaprecio) puede haber 0,1,2 registros asociados o sea un articulo puede tener ningun precio, precio mayorista o precio minorista o ambos..
+--------------+---------+
|IdArt|IdLista | precio |
+------------+-+---------+
| 1 | 1 | 2.30 |
| 1 | 2 | 3.40 |
| 2 | 1 | 5.60 |
+--------------+---------+

El Resultado Esperado es
+----------------------------+-----------------+-------------+---------------+
|IdArt|Articulo|PrecioMinorista|PrecioMayorista|CodigoDeBarra|CodigoDeFabrica|
+------------------------------+---------------+-------------+---------------+
| 1 | HARINA | 2.30 + 3.40 + 000111 + aaabbb |
| 2 | ARROZ | 5.60 + + 222333 + |
| 3 | FIDEO | 3.40 + + + |
+----------------------------------------------------------------------------+

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: Group_Concat columna que devuelve varios valores
223
May 09, 2020 08:56AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.