[sql] hawk

Viewer

  1. ERCREATE TEMPORARY TABLE matrixX (
  2.  
  3.                 x INT NOT NULL AUTO_INCREMENT,
  4.  
  5.                 a INT DEFAULT 7, b INT DEFAULT 7, c INT DEFAULT 7,
  6.  
  7.                 d INT DEFAULT 7, e INT DEFAULT 7,
  8.  
  9.                 PRIMARY KEY ( x )
  10.  
  11. ) ENGINE=MEMORY AUTO_INCREMENT=100;
  12.  
  13.  
  14.  
  15. CREATE PROCEDURE drawerX( cursorX INT )
  16.  
  17. BEGIN
  18.  
  19.                 SET @strquery = ' SELECT * FROM matrixX ';
  20.  
  21.  
  22.  
  23.                 SET @repeatX = 0;
  24.  
  25.                 REPEAT
  26.  
  27.                 SET @repeatX = @repeatX + 1;
  28.  
  29.                                 SET @sqlStr = ' ';
  30.  
  31.                                
  32.  
  33.                                 SET @cloop = 0;
  34.  
  35.                                 internal: LOOP
  36.  
  37.                                                 SET @cloop = @cloop + 1;
  38.  
  39.  
  40.  
  41.                                                 IF ( @cloop + @repeatX ) MOD 2 = 0 THEN
  42.  
  43.                                                                 SET @sqlStr = CONCAT( @sqlStr, ' 1 , ' );
  44.  
  45.                                                 ELSE
  46.  
  47.                                                                 SET @sqlStr = CONCAT( @sqlStr, ' 0 , ' );
  48.  
  49.                                                 END IF;
  50.  
  51.  
  52.  
  53.                                                 IF @cloop = 5 THEN
  54.  
  55.                                                                 SET @sqlStr = LEFT( @sqlStr , 9 );
  56.  
  57.                                                                 LEAVE internal;
  58.  
  59.                                                 END IF;
  60.  
  61.                                 END LOOP internal;
  62.  
  63.  
  64.  
  65.                                 SET @stmtexc = CONCAT( 'INSERT INTO matrixX ( a, b, c, d, e ) VALUE ( ' , @sqlStr, ' );' );
  66.  
  67.                                 PREPARE stmtexc FROM @stmtexc;
  68.  
  69.                                 EXECUTE stmtexc;
  70.  
  71.                 UNTIL @repeatX = cursorX END REPEAT;
  72.  
  73.  
  74.  
  75.                 PREPARE stmt FROM @strquery;
  76.  
  77.                 EXECUTE stmt;
  78.  
  79. END;
  80.  
  81.  
  82.  
  83. CALL drawerX( 6 );

Editor

You can edit this paste and save as new:


File Description
  • hawk
  • Paste Code
  • 29 Oct-2020
  • 1.97 Kb
You can Share it: