sql >> データベース >  >> RDS >> Oracle

plsqlで行列を初期化する方法

    連想配列を使用する必要はありません。コレクションは機能します。

    DECLARE
      TYPE RecType IS RECORD
      (
        value1   NUMBER,
        value2   NUMBER,
        value3   NUMBER
      );
      TYPE TblType IS TABLE OF RecType;
      TYPE TblOfTblType IS TABLE OF TblType;
      matrix   TblOfTblType := TblOfTblType();
    BEGIN
      matrix.EXTEND(3);
      FOR i IN 1 .. matrix.COUNT LOOP
        matrix(i) := TblType();
        matrix(i).EXTEND(4);
        FOR j IN 1 .. matrix(i).COUNT LOOP
          matrix(i)(j).value1 := i;
          matrix(i)(j).value2 := j;
          matrix(i)(j).value3 := DBMS_RANDOM.VALUE;
        END LOOP;
      END LOOP;
    
      FOR i IN 1 .. matrix.COUNT LOOP
        FOR j IN 1 .. matrix(i).COUNT LOOP
          DBMS_OUTPUT.PUT( '[' || matrix(i)(j).value1
                        || ',' || matrix(i)(j).value2
                        || ',' || matrix(i)(j).value3 || ']' || CHR(11) );
        END LOOP;
        DBMS_OUTPUT.NEW_LINE;
      END LOOP;
    END;
    /
    


    1. 前提条件の特定のリストによって完全に満たされるコースを選択します

    2. Mysqlより高速なINSERT

    3. SELECT FORUPDATEを使用する理由

    4. postgresqlデータベースを使用してweb2pyスケジューラーを実行できません