sql - 如何将这两个 SELECT 语句合二为一
问题描述
我有两个 SELECT 查询,它们写在MySQL
$sql = 'SELECT Name FROM category WHERE CategoryID = '.$id;
和
$sql = "SELECT * FROM sub_category WHERE ParentID = $id ORDER BY OrderIndex";
到目前为止,我必须将这两个查询翻译成Oracle PL/SQL
,我想到将这两个语句合并为一个,到目前为止我写了查询,但我有点困惑,因为我是初学者PL/SQL
SELECT
c.Name,
sc.Name as SubCategoryName,
sc.ID as SubCategoryID,
sc.Picture as Picture,
sc.OrderIndex
FROM Category c
INNER JOIN sub_category sc ON ParentID =
WHERE CategoryID = 23;
这是表格的图形表示
类别表
子类别表
解决方案
您的想法是正确的,连接表是“将两个 select 语句组合在一起”的标准方法之一。根据您使用的类型,您将获得不同的结果join
。例如,请参阅此问题以了解不同类型的连接的解释。
您的查询几乎是正确的(假设您想要一个inner join
),您缺少条件的右侧join
:
SELECT
c.Name,
sc.Name as SubCategoryName,
sc.ID as SubCategoryID,
sc.Picture as Picture,
sc.OrderIndex
FROM Category c
INNER JOIN sub_category sc ON sc.ParentID = c.CategoryID
WHERE CategoryID = 23;
推荐阅读
- java - 如何在 Sling 中创建 JobConsumer?
- python - 如何根据另一个数据框的完整字符串列过滤子字符串的熊猫数据框?
- python - 如何修复“没有名为‘numpy.core._multiarray_umath’的模块”错误
- php - 带有反向代理的 WP:从子域访问管理部分
- angular - 未捕获的错误:断言错误:传入的类型不是 NgModuleType,它没有 'ɵmod' 属性
- javascript - API 返回一个数组,但数据未显示在屏幕上
- python - 打印列表列表时的边界
- javascript - 如何使用 Glitch 访问 .env 变量?
- javascript - “TypeError:无法读取未定义的属性'push'”将字符串添加到数组时
- python - 我是 Django 新手,在此网站上显示类别时遇到问题