Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
解决问题,这就是你要求我们做的。在测试SQL中,不断删除这些表、联接、筛选器和所选列,直到有可能最小的SQL语句仍然存在问题。那么也许我们可以“以貌取人”。你的查询工作完美无瑕。但您还提到“如果我只需要每个项目一次,我应该使用EXISTS(半联接)来过滤行_Sql_Oracle_Oracle11g_Oracle Sqldeveloper - Fatal编程技术网

解决问题,这就是你要求我们做的。在测试SQL中,不断删除这些表、联接、筛选器和所选列,直到有可能最小的SQL语句仍然存在问题。那么也许我们可以“以貌取人”。你的查询工作完美无瑕。但您还提到“如果我只需要每个项目一次,我应该使用EXISTS(半联接)来过滤行

解决问题,这就是你要求我们做的。在测试SQL中,不断删除这些表、联接、筛选器和所选列,直到有可能最小的SQL语句仍然存在问题。那么也许我们可以“以貌取人”。你的查询工作完美无瑕。但您还提到“如果我只需要每个项目一次,我应该使用EXISTS(半联接)来过滤行,sql,oracle,oracle11g,oracle-sqldeveloper,Sql,Oracle,Oracle11g,Oracle Sqldeveloper,解决问题,这就是你要求我们做的。在测试SQL中,不断删除这些表、联接、筛选器和所选列,直到有可能最小的SQL语句仍然存在问题。那么也许我们可以“以貌取人”。你的查询工作完美无瑕。但您还提到“如果我只需要每个项目一次,我应该使用EXISTS(半联接)来过滤行,而不是实际联接到WIP\u离散作业。\u V。”您能再解释一下吗?此外,我了解使用表单视图的长期影响,并按照您的建议将视图表替换为基表。再次感谢。我给你的查询是一个如何使用EXISTS/semi-join筛选项目的示例EXISTS只是返回TR


解决问题,这就是你要求我们做的。在测试SQL中,不断删除这些表、联接、筛选器和所选列,直到有可能最小的SQL语句仍然存在问题。那么也许我们可以“以貌取人”。你的查询工作完美无瑕。但您还提到“如果我只需要每个项目一次,我应该使用EXISTS(半联接)来过滤行,而不是实际联接到WIP\u离散作业。\u V。”您能再解释一下吗?此外,我了解使用表单视图的长期影响,并按照您的建议将视图表替换为基表。再次感谢。我给你的查询是一个如何使用
EXISTS
/semi-join筛选项目的示例<如果(通常相关的)子查询返回任何行,则code>EXISTS只是返回
TRUE
的表达式。看,即使我得到了唯一的记录,我似乎仍然无法获取每个项目的所有组件。我正在尝试从BOM\u库存\u组件中选择组件\u项目\u ID。我将此列连接到MTL\U SYSTEM\U ITEMS\B表的库存\U ITEM\U ID。它为每个项目返回Null或不完整的数据。这或多或少是正确的联接(您还需要以某种方式限制
MTL\u系统\u项目。组织\u ID
)。我不知道什么是
null
或“不完整”。我建议您在单独的问题中发布您的查询和最新问题。我已在单独的主题中发布了最新查询。你能看一下吗?你的查询完美无瑕。但您还提到“如果我只需要每个项目一次,我应该使用EXISTS(半联接)来过滤行,而不是实际联接到WIP\u离散作业。\u V。”您能再解释一下吗?此外,我了解使用表单视图的长期影响,并按照您的建议将视图表替换为基表。再次感谢。我给你的查询是一个如何使用
EXISTS
/semi-join筛选项目的示例<如果(通常相关的)子查询返回任何行,则code>EXISTS只是返回
TRUE
的表达式。看,即使我得到了唯一的记录,我似乎仍然无法获取每个项目的所有组件。我正在尝试从BOM\u库存\u组件中选择组件\u项目\u ID。我将此列连接到MTL\U SYSTEM\U ITEMS\B表的库存\U ITEM\U ID。它为每个项目返回Null或不完整的数据。这或多或少是正确的联接(您还需要以某种方式限制
MTL\u系统\u项目。组织\u ID
)。我不知道什么是
null
或“不完整”。我建议您在单独的问题中发布您的查询和最新问题。我已在单独的主题中发布了最新查询。你能看看吗?
SELECT *
FROM BOM_BILL_OF_MATERIALS BOM,
  BOM_INVENTORY_COMPONENTS BIC,
  BOM_COMPONENTS_B BCB,
  BOM_OPERATIONAL_ROUTINGS_V BORV,
  BOM_OPERATION_SEQUENCES_V BOSV,
  BOM_STRUCTURES_B BSB,
  BOM_STRUCTURE_TYPES_B BST,
  MTL_SYSTEM_ITEMS_B MSI,
  MTL_SYSTEM_ITEMS_TL MSIT,
  ORG_ORGANIZATION_DEFINITIONS OOD,
  WIP_DISCRETE_JOBS_V WDJV
WHERE BOM.BILL_SEQUENCE_ID    = BIC.BILL_SEQUENCE_ID
AND BIC.COMPONENT_SEQUENCE_ID = BCB.COMPONENT_SEQUENCE_ID
AND BCB.BILL_SEQUENCE_ID      = BSB.BILL_SEQUENCE_ID
AND BOM.STRUCTURE_TYPE_ID     = BST.STRUCTURE_TYPE_ID
AND BOM.ASSEMBLY_ITEM_ID     = MSI.INVENTORY_ITEM_ID
AND BOM.ORGANIZATION_ID      = MSI.ORGANIZATION_ID
AND BOSV.ROUTING_SEQUENCE_ID = BORV.ROUTING_SEQUENCE_ID
AND BORV.ASSEMBLY_ITEM_ID    = BOM.ASSEMBLY_ITEM_ID
AND BORV.ORGANIZATION_ID     = BOM.ORGANIZATION_ID
AND MSI.INVENTORY_ITEM_ID    = MSIT.INVENTORY_ITEM_ID
AND MSI.ORGANIZATION_ID      = MSIT.ORGANIZATION_ID
AND MSIT.ORGANIZATION_ID     = OOD.ORGANIZATION_ID
AND MSIT.LANGUAGE            = USERENV('LANG')
AND sysdate BETWEEN BCB.EFFECTIVITY_DATE AND NVL(BCB.DISABLE_DATE, sysdate)
AND MSI.BOM_ENABLED_FLAG            = 'Y'
AND NVL(MSI.ENABLED_FLAG,'X')       ='Y'
AND OOD.ORGANIZATION_ID            IN (203,204,328)
AND BORV.COMMON_ROUTING_SEQUENCE_ID = WDJV.COMMON_ROUTING_SEQUENCE_ID
AND BORV.ASSEMBLY_ITEM_ID = WDJV.PRIMARY_ITEM_ID
AND WDJV.CREATION_DATE    > ADD_MONTHS( sysdate, -12*3 )
AND WDJV.WIP_ENTITY_NAME = '28799'
  --and MSI.SEGMENT1='9064090'
SELECT *
FROM   bom_bill_of_materials bom,
       bom_inventory_components bic,
       bom_components_b bcb,
       bom_operational_routings_v borv,
       bom_operation_sequences_v bosv,
       bom_structures_b bsb,
       bom_structure_types_b bst,
       mtl_system_items_b msi,
       mtl_system_items_tl msit,
       org_organization_definitions ood --,
       --wip_discrete_jobs_v wdjv
WHERE  bom.bill_sequence_id = bic.bill_sequence_id
AND    bic.component_sequence_id = bcb.component_sequence_id
AND    bcb.bill_sequence_id = bsb.bill_sequence_id
AND    bom.structure_type_id = bst.structure_type_id
AND    bom.assembly_item_id = msi.inventory_item_id
AND    bom.organization_id = msi.organization_id
AND    bosv.routing_sequence_id = borv.routing_sequence_id
AND    borv.assembly_item_id = bom.assembly_item_id
AND    borv.organization_id = bom.organization_id
AND    msi.inventory_item_id = msit.inventory_item_id
AND    msi.organization_id = msit.organization_id
AND    msit.organization_id = ood.organization_id
AND    msit.language = USERENV ('LANG')
AND    SYSDATE BETWEEN bcb.effectivity_date AND NVL (bcb.disable_date, SYSDATE)
AND    msi.bom_enabled_flag = 'Y'
AND    NVL (msi.enabled_flag, 'X') = 'Y'
AND    ood.organization_id IN (203, 204, 328)
--AND    borv.common_routing_sequence_id = wdjv.common_routing_sequence_id
--AND    borv.assembly_item_id = wdjv.primary_item_id
--AND    wdjv.creation_date > ADD_MONTHS (SYSDATE, -12 * 3)
--AND    wdjv.wip_entity_name = '28799'
AND    EXISTS ( SELECT 'discrete job within the last 3 years'
                FROM   wip_discrete_jobs_v wdjv
                WHERE  wdjv.common_routing_sequence_id = borv.common_routing_sequence_id
                AND    wdjv.primary_item_id = borv.assembly_item_id
                AND    wdjv.creation_date >= ADD_MONTHS(SYSDATE, -12*3)
                )
--and MSI.SEGMENT1='9064090'