如何实现与mysql数据库(5.6版以后的版本)中的oracle游标表达式相同的功能下面是oracle游标表达式的示例查询
SELECT department_name, CURSOR(SELECT salary, commission_pct
FROM employees e
WHERE e.department_id = d.department_id)
FROM departments d;
如何使用mysql数据库实现与此相同的功能?
如果我在oracle下面的输出上执行这个查询,我将得到一个名为cursor的结果
mca{<工资=20000,佣金pct=2>,<工资=40000,佣金pct=20>,}
工资20000,佣金2
1条答案
按热度按时间jw5wzhpr1#
我不知道cursor()在oracle中的作用,因为我从未接触过oracle,但我不知道它是否能帮助您,但我认为您希望这样加入:
有关关节的更多信息,请访问以下链接:https://sql.sh/cours/jointures 根据sql.sh:
有几种方法可以将两个表关联在一起。下面列出了使用的不同技术:
内部联接:当两个表中的条件都为真时,返回记录的内部联接。这是最常见的
连接。
交叉连接:交叉连接使两个表的笛卡尔积。换句话说,允许将表的每一行与第二个表的每一行连接起来。注意,结果的数量一般都很高。
left join(或left outer join):外部连接,用于返回左表(left=left)的所有记录,即使条件不是
签入另一张表。
right join(或right outer join):外部联接,用于返回右侧表(right=right)中的所有记录,即使条件未在另一个表中选中。
完全联接(或完全外部联接):当条件在两个表中的至少一个表中为真时返回结果的外部联接。
self join:允许将一个表与其自身连接起来,就像它是另一个表一样。
自然联接:如果两个sql表之间至少有一列具有相同名称,则在两个表之间进行自然联接。
联合连接:联合的连接。
如果你有任何问题,我可以回答。