Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/79.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
uce/消除上下文切换造成的任何开销?据我所知,用户定义的聚合函数可能是最好的来源。只要您不在函数本身中使用SQL,它似乎也可以避免上下文切换问题,但我仍然没有找到明确的答案。只要您不进行导致代码中出现上下文切换的调用。但是,对于复杂的统计函数,调用这些函_Sql_Oracle_Plsql - Fatal编程技术网

uce/消除上下文切换造成的任何开销?据我所知,用户定义的聚合函数可能是最好的来源。只要您不在函数本身中使用SQL,它似乎也可以避免上下文切换问题,但我仍然没有找到明确的答案。只要您不进行导致代码中出现上下文切换的调用。但是,对于复杂的统计函数,调用这些函

uce/消除上下文切换造成的任何开销?据我所知,用户定义的聚合函数可能是最好的来源。只要您不在函数本身中使用SQL,它似乎也可以避免上下文切换问题,但我仍然没有找到明确的答案。只要您不进行导致代码中出现上下文切换的调用。但是,对于复杂的统计函数,调用这些函,sql,oracle,plsql,Sql,Oracle,Plsql,uce/消除上下文切换造成的任何开销?据我所知,用户定义的聚合函数可能是最好的来源。只要您不在函数本身中使用SQL,它似乎也可以避免上下文切换问题,但我仍然没有找到明确的答案。只要您不进行导致代码中出现上下文切换的调用。但是,对于复杂的统计函数,调用这些函数可能是有益的。例如,将计算传递到开源统计环境R。 PARENT( ID NUMBER, NAME VA


uce/消除上下文切换造成的任何开销?据我所知,用户定义的聚合函数可能是最好的来源。只要您不在函数本身中使用SQL,它似乎也可以避免上下文切换问题,但我仍然没有找到明确的答案。只要您不进行导致代码中出现上下文切换的调用。但是,对于复杂的统计函数,调用这些函数可能是有益的。例如,将计算传递到开源统计环境R。
PARENT(
    ID                                 NUMBER,
    NAME                               VARCHAR(20),
    NUMBER_OF_CHILDREN                 NUMBER,
    AVERAGE_CHILD_AGE                  NUMBER,
    OLDEST_CHILD_AGE                   NUMBER,
    YOUNGEST_CHILD_AGE                 NUMBER,
    MODE_EYE_COLOR                     VARCHAR(20),
    EVERY_CHILD_MADE_A                 VARCHAR(1),
    BLOODTYPES_THAT_CAN_BE_ACCEPTED    VARCHAR(100),
    SOMETHING_COMPLEX                  COMPLEX_OBJECT_1
)

CHILD(
    ID                   NUMBER,
    PARENT_ID            NUMBER,
    AGE                  NUMBER,
    EYE_COLOR            VARCHAR(20),
    MADE_AN_A            VARCHAR(1),
    BLOODTYPE            VARCHAR(5),
    COMPLEXITY           COMPLEX_OBJECT_2
)
PROCEDURE UPDATE_PARENT_1 (PARENT_ID IN NUMBER)
BEGIN
    UPDATE PARENT
    SET
        NUMBER_OF_CHILDREN                = CHILD_COUNT_FUNCTION(PARENT_ID),
        AVERAGE_CHILD_AGE                 = CHILD_AGE_AVERAGE_FUNCTION(PARENT_ID),
        OLDER_CHILD_AGE                   = PICK_OLDEST_AGE_FUNCTION(PARENT_ID),
        YOUNGEST_CHILD_AGE                = PICK_YOUNGEST_AGE_FUNCTION(PARENT_ID),
        MODE_EYE_COLOR                    = MOST_OFTEN_EYE_COLOR_FUNCTION(PARENT_ID),
        BLOODTYPES_THAT_CAN_BE_ACCEPTED   = DETERMINE_BLOOD_DONOR_TYPES(PARENT_ID),
        SOMETHING_COMPLEX                 = COMPLEX_FUNCTION(PARENT_ID)
    WHERE
        ID = PARENT_ID;
END;


PROCEDURE UPDATE_PARENT_2 (PARENT_ID IN NUMBER)
    CURSOR C IS SELECT * FROM CHILD WHERE CHILD.PARENT_ID = PARENT_ID
BEGIN
    OPEN C;

    UPDATE PARENT
    SET
        NUMBER_OF_CHILDREN                = CHILD_COUNT_FUNCTION(C),
        AVERAGE_CHILD_AGE                 = CHILD_AGE_AVERAGE_FUNCTION(C),
        OLDER_CHILD_AGE                   = PICK_OLDEST_AGE_FUNCTION(C),
        YOUNGEST_CHILD_AGE                = PICK_YOUNGEST_AGE_FUNCTION(C),
        MODE_EYE_COLOR                    = MOST_OFTEN_EYE_COLOR_FUNCTION(C)
        BLOODTYPES_THAT_CAN_BE_ACCEPTED   = DETERMINE_BLOOD_DONOR_TYPES(C),
        SOMETHING_COMPLEX                 = COMPLEX_FUNCTION(C)
    WHERE
        ID = PARENT_ID;

    CLOSE C;
END;
UPDATE Parent
SET (Number_Of_Children, Average_Child_Age, Oldest_Child_Age, Youngest_Child_Age) = (
  SELECT COUNT(*), AVG(Age), MAX(Age), MIN(Age)
  FROM Child
  WHERE Parent.ID = Child.Parent_ID
)
UPDATE Parent
    SET (Number_Of_Children, Average_Child_Age, Oldest_Child_Age, Youngest_Child_Age
         Mode_Eye_Color) =
         (select cnt, avg_age, min_age, max_age, eyecolor 
          from (select cnt, avg_age, min_age, max_age, eyecolor
                       ROW_NUMBER() over (order by cnt_ec desc) as seqnum
                from (select COUNT(*) over (partition by Parent_id) as cnt,
                             AVG(Age) over (partition by Parent_id) as avg_age,
                             MIN(Age) over (partition by Parent_id) as min_age,
                             MAX(Age) over (partition by Parent_id) as max_age,
                             COUNT(*) over (partition by Parent_id, eyecolor) as cnt_ec,
                             eyecolor
                      from Child
                      where Parent.ID = Child.Parent_ID
                     ) t
               ) t
          where seqnum = 1
         )
UPDATE Parent
SET (Number_Of_Children, Average_Child_Age, Oldest_Child_Age,
     Youngest_Child_Age, MODE_EYE_COLOR, BLOODTYPES_THAT_CAN_BE_ACCEPTED,
     SOMETHING_COMPLEX ) = 
(
  SELECT COUNT(*), AVG(Age), MAX(Age), MIN(Age), STATS_MODE(EYE_COLOR),
    ListBloodTypes(BLOODTYPE), ComplexCombine(SOMETHING_COMPLEX)
  FROM Child
  WHERE Parent.ID = Child.Parent_ID
)