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

Oracleは行をN回複製します。ここで、Nは列です。

    階層クエリでそれを行うことができます:

    SQLフィドル

    クエリ1

    WITH levels AS (
      SELECT LEVEL AS lvl
      FROM   DUAL
      CONNECT BY LEVEL <= ( SELECT MAX( DupCount ) FROM TestTable )
    )
    SELECT Name,
           DupCount
    FROM   TestTable
           INNER JOIN
           levels
           ON ( lvl <= DupCount )
    ORDER BY Name
    

    結果

    |  NAME | DUPCOUNT |
    |-------|----------|
    |  Jane |        1 |
    |  Jeff |        3 |
    |  Jeff |        3 |
    |  Jeff |        3 |
    |  Mark |        2 |
    |  Mark |        2 |
    | Steve |        1 |
    


    1. T-SQL ISNULL()が文字列を切り捨て、COALESCEが切り捨てないのはなぜですか?

    2. サーバーやphpMyADMINにアクセスせずにSQLテーブルをエクスポートする簡単な方法

    3. ループ内に配列があるチェックボックスFalseResult?

    4. Python / Flask:ユーザーがページに費やした時間を知る方法は? (データ入力/タイムログアプリ)