【问题标题】:How to use inner join in oracle 11g?如何在 oracle 11g 中使用内部连接?
【发布时间】:2012-09-14 07:39:07
【问题描述】:

我在这里运行我的 Oracle 查询,但它不工作,但相同的查询在 SQL Server 中工作

这是我的查询:

SELECT d.dept_code,
       d.dept_name,
       d.dept_desc,
       e.comp_name
FROM   dept_master d
       inner join comp_master e
               ON d.comp_id = e.comp_id 

dept_master.comp_id 中的值与Dept_Master 表中的值相同。

【问题讨论】:

  • 您遇到的错误是什么?
  • 没有得到任何值,只显示列名。
  • 你能像这样更新你的代码吗stackoverflow.com/questions/6559261/…
  • 如果您没有得到任何结果,则意味着您的加入条件错误或没有符合加入条件的记录
  • 可以给表结构吗?就像使用 'desc dept_master' 命令

标签: sql oracle join inner-join


【解决方案1】:

你没有得到任何结果的原因主要是因为数据

执行此检查以查看表中是否有可用数据

select * from dept_master;
select * from comp_master;

并查看两个表是否有任何匹配的行,即;两个表中至少有 1 行具有相同的 comp_id

希望你在做完这个练习后能找到答案

【讨论】:

  • sir 数据在两个表中都有,但是当我获取 comp_id 时,它包含一些空间,因此我无法加入查询。
  • @Vikash 你在 comp_id 中有空格吗?
【解决方案2】:

comp_id 是字符域吗?在这种情况下,在 Oracle 中将其定义为 VARCHAR2。或尝试 trim(d.comp_id) = trim(e.comp_id)

查看demonstration in SQL Fiddle

【讨论】:

    猜你喜欢
    • 2014-04-19
    • 2013-03-07
    • 1970-01-01
    • 2016-05-11
    • 1970-01-01
    • 2015-12-09
    • 2021-10-18
    • 1970-01-01
    • 2011-09-27
    相关资源
    最近更新 更多