¿Cómo hacer este SELECT entre dos tablas?

  • Autor Autor DiegoHeras
  • Fecha de inicio Fecha de inicio
D

DiegoHeras

Gamma
Programador
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
wDoVM2yWRguUhPaSAe-6hw.png
 
No entiendo, es una pregunta? En principio está bien como dices

select items.id, item_prices.price
from items, item_prices
where item_prices.company_id = 7
and items.id = item_prices.item_id
 
Lo tienes hecho, no entiendo bien si es una pregunta... solo te hace falta pasarlo a sql

Insertar CODE, HTML o PHP:
Select i.id, ip.price from items i , item_prices ip where ip.company_id=7 and i.id=ip.item_id
 
Lo tienes hecho, no entiendo bien si es una pregunta... solo te hace falta pasarlo a sql

Insertar CODE, HTML o PHP:
Select i.id, ip.price from items i , item_prices ip where ip.company_id=7 and i.id=ip.item_id

No entiendo, es una pregunta? En principio está bien como dices

select items.id, item_prices.price
from items, item_prices
where item_prices.company_id = 7
and items.id = item_prices.item_id


Así no funciona, porque solo te devuelve los items que tengan esos valores. Yo quiero que me devuelva la lista entera y que en precio salga vacio o en null, cuando no haya valores. En ese caso solo te devuelve:
id / price
2 / 100.2
 
Funciona exactamente como has puesto aquí:

68kxX8wtQlKYt84Ky4bvag.png


Si escribes lo que necesitas, y no tenemos que hacer la labor de adivinos, seguramente nos sea más fácil identificar lo que necesitas.
 
Ya lo consegui. Gracias a todos.
select i.id, i.name, i.size_1, i.size_2,i.length,i.thickness , p.price from items i left join item_prices p on i.id = p.item_id and p.company_id=:cid where i.item_type_id=:tid
 
Usa INNER JOIN para seleccionar de las dos tablas.
 
Ya lo consegui. Gracias a todos.
select i.id, i.name, i.size_1, i.size_2,i.length,i.thickness , p.price from items i left join item_prices p on i.id = p.item_id and p.company_id=:cid where i.item_type_id=:tid



Creo que solo te faltaría agregarle que si es null te devuelva cero, para evitar futuros errores en la programación:
Por ejemplo:
SELECT isnull(p.price,0) FROM items i
Left join item_price p on i.item_id= p.item_id
where it.company_id=7
 
Última edición:
con un inner join o left join completas eso
 
Creo que solo te faltaría agregarle que si es null te devuelva cero, para evitar futuros errores en la programación:
Por ejemplo:
SELECT isnull(p.price,0) FROM items i
Left join item_price p on i.item_id= p.item_id
where it.company_id=7

estoy de acuerdo yo también lo haría 😎
 
Atrás
Arriba