【问题标题】:Selecting data from two tables. What's wrong with this sql query?从两个表中选择数据。这个 sql 查询有什么问题?
【发布时间】:2015-07-12 20:34:44
【问题描述】:

我正在从两个表中收集信息。

我的命令:

select p.prod_id, p.prod_fornecedor, p.prod_fabricante, p.prod_nome, p.prod_categoria, p.prod_datacadastro,
       p.prod_codbarras, e.est_quantidade from Produto p join Estoque e on p.prod_nome like 'Produto 1'

我得到了什么: 我需要得到这个:

【问题讨论】:

  • 您只是在 p.prod_nome 上进行连接,而 Produto 和 Estoque 之间没有链接。也许您应该加入 p.prod_nome = e.prod_nome (或者可能是两个表中的 prod_id?),并且 prod_nome 像“Produto 1”。正是我的猜测,向我们展示表定义和一些示例数据,我们一定会为您提供帮助。

标签: sql postgresql select join


【解决方案1】:

查询中必须有连接条件。假设表Estoque有一个字段prod_id

select 
    p.prod_id, p.prod_fornecedor, p.prod_fabricante, 
    p.prod_nome, p.prod_categoria, p.prod_datacadastro,
    p.prod_codbarras, e.est_quantidade 
from Produto p 
join Estoque e on p.prod_id = e.prod_id
where p.prod_nome like 'Produto 1'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-15
    • 2010-10-21
    • 1970-01-01
    • 2015-08-08
    相关资源
    最近更新 更多