[MySQL] 配列データの一括INSERT

この辺、コンパイル後の *.lst ファイルを見ても、PROGMEM な定数(や配列は)データとして格納されてるのが分かるぽい。
昔の仕様:配列の0から入れると不具合あるから1からデータ追加しよう 今の仕様:配列の0から入れてもいいから配列操作したい どうしてこんな面倒なことになったのか
CPU負荷がユーザモジュールで30%も食ってる!こりゃだめだな。 せいぜい20%以内に抑えないと。 さて、Numpy配列操作が重いのか? でもやっぱりDraw関数だろうなぁ。 データは毎秒取得しても毎秒の描画はやめて10秒毎に更新しようかな。
「本物のプログラマはPascalを使わない」によると、本物のプログラマが使う唯一のデータ構造は配列
キュー:FIFO(First-in First-Out;先入れ先出し)のデータ構造で、配列やリストで実現される。新しい要素は末尾の要素の後ろに挿入され、先頭の要素から取り出される。キューに対する操作はエンキュー(要素の挿入)とデキュー(要素の参照・削除)で行う。《基礎理論》
逆遺伝学 メンデル遺伝学(表現型→遺伝子型)ではなく、遺伝子型から表現型を決定する研究法。データベースなどから配列データを取得してこの遺伝子を同定し、機能を解析するプロセスを遺伝子アノテーションという。逆遺伝学は相同性検索や膨大な遺伝子データの集積によって可能となった。
小保方氏がSTAP論文のメチル化のデータをまとめる際にも、「仮説を支持するデータとするために意図的なDNA配列の選択や大腸菌クローンの操作を行ったこと」が明らかにされており、調査委員会は小保方氏から「責任を感じている」と説明されたという。『反オカルト論』
ゲノムデータベースの膨大な情報にアクセスして、いろんな動物の配列を取ってきてあっちゃこっちゃいじくりまわすこと数時間。何も得られなかった。情弱はデータに押しつぶされた。
俺もよく知らないけど、ある特定のDNAの配列がナントカカントカで お前は何種類かの麻薬に対して耐性がある体質だそうだ 献血のデータから判明した
情報系の大学教員でもCPUのキャッシュ周りは知らないんだなあ。でっかい配列から不要になったデータを抜くのに、後から一々詰めてたら、キャッシュをクリアしなくていいページまでクリアされて、並列化しても性能が上がらないだろうに。
生物に対する研究のうち、ゲノムやタンパク質等の生物データを「すべて」集めて解析する研究領域を、omics(オーミクス)科学と呼ぶわ。DNA配列やタンパク質の組成を高速で解析できるようになったからこそ成り立つ科学ね。21世紀の生物研究の根本にある研究手法になるかもしれないわ。
国土地理院から取得出来る路線情報のパスデータ、肝心の座標データ部分がvector2の配列になってるんだがunityのjsonutilだと二次元配列をパース出来ないという悲しみ…… データの方を変換かけりゃ良いんだけどね。素直なスキーマだし。
48000で配列まあまあの海外四文字 無ハック、GTAデータ無しこれどう思いますか?

したいこと

以下のようなデータを保持しており、

/* PHP */

$category = "碁";

// 連想配列
$players = array();
$players += array("name" => "加賀", "gender" => "M");
$players += array("name" => "奈瀬", "gender" => "F");
$players += array("name" => "飯島", "gender" => "M");

こんな感じになるように、一括INSERTしたい!

category name gender
加賀 M
奈瀬 F
飯島 M

SQL文の生成

ゴールとなるINSERT文は、
INSERT INTO hogeTable (category, name, gender) VALUES ('碁', '加賀', 'M'), ('碁', '奈瀬','F'), ('碁', '飯島', 'M');
である

以下のように生成する


$arrayValues = "";

foreach ($players as $user) {
    $name   = $player['name'];
    $gender = $player['gender'];
    $arrayValues[] = "('{$category}', '{$name}', '{$gender}')";
}

$sql = "INSERT INTO hogeTable (category, name, gender) VALUES " 
        .join(",",$arrayValues);

echo $sql;
[紹介元] PHPタグが付けられた新着投稿 – Qiita [MySQL] 配列データの一括INSERT

  • コメント

    1. 匿名希望
      2018/01/17(水) 14:33:08

      逆遺伝学
      メンデル遺伝学(表現型→遺伝子型)ではなく、遺伝子型から表現型を決定する研究法。データベースなどから配列データを取得してこの遺伝子を同定し、機能を解析するプロセスを遺伝子アノテーションという。逆遺伝学は相同性検索や膨大な遺伝子データの集積によって可能となった。

    2. 匿名希望
      2018/01/17(水) 14:33:08

      小保方氏がSTAP論文のメチル化のデータをまとめる際にも、「仮説を支持するデータとするために意図的なDNA配列の選択や大腸菌クローンの操作を行ったこと」が明らかにされており、調査委員会は小保方氏から「責任を感じている」と説明されたという。『反オカルト論』

    3. 匿名希望
      2018/01/17(水) 14:33:08

      ゲノムデータベースの膨大な情報にアクセスして、いろんな動物の配列を取ってきてあっちゃこっちゃいじくりまわすこと数時間。何も得られなかった。情弱はデータに押しつぶされた。

    4. 匿名希望
      2018/01/17(水) 14:33:08

      昔の仕様:配列の0から入れると不具合あるから1からデータ追加しよう
      今の仕様:配列の0から入れてもいいから配列操作したい

      どうしてこんな面倒なことになったのか

    5. 匿名希望
      2018/01/17(水) 14:33:08

      CPU負荷がユーザモジュールで30%も食ってる!こりゃだめだな。
      せいぜい20%以内に抑えないと。
      さて、Numpy配列操作が重いのか?
      でもやっぱりDraw関数だろうなぁ。
      データは毎秒取得しても毎秒の描画はやめて10秒毎に更新しようかな。

    記事に戻る

関連記事