- ベストアンサー
複数行を1レコード化する方法について
alicia-yの回答
open(F, "xxxxx.txt"); $l = <F>; push @all, $l; while(<F>){ chomp; if(/^\*+/){ print join('@@', @all), "\n"; undef @all; push @all, $_; } else { push @all, $_; } } print join('@@', @all), "\n"; close(F);
関連するQ&A
- 複数行を1レコードにまとめたい
1つのテーブルでカラムAに個人を特定する情報、カラムBに個人情報の項目、カラムCにその値が設定されています。 カラムBは個人によって登録されている数が異なります。 カラムBから必要な項目を特定して個人を1レコードに集約して抽出したいと思っているのですが、どのようにSQLを作成すればよいでしょうか? 作成してみたSQLでは1レコードに1カラムずつしか値が入らないため、複数行となってしまうのでまとめたいという状況です。 データ カラムA, カラムB, カラムC ------------------------- KOJIN1, AAA, MOJI1 KOJIN1, BBB, MOJI2 KOJIN2, AAA, MOJI3 KOJIN3, BBB, MOJI4 KOJIN3, CCC, MOJI5 select カラムA, case when カラムB = AAA then カラムC end カラムAAA, case when カラムB = BBB then カラムC end カラムBBB from テーブル 結果 カラムA, カラムAAA, カラムBBB ----------------------------- KOJIN1, MOJI1, KOJIN1, , MOJI2 KOJIN2, MOJI3, KOJIN3, , MOJI4 ↑KOJIN1, MOJI1, MOJI2 のように出力したい 初歩的な質問かもしれませんが、よろしくお願いします。
- 締切済み
- Oracle
- エクセル2010 複数枚のシートの名前を一度に変更
エクセル2010を使用しています。 複数枚のシート名にそれぞれ次のように名前が入っています。 A001abcdef_R_1_1 A002abcdef_R_1-2 A003abcdef_L_1-1 A004abcdef_L_1-2 A005abcdef_R_2-1 A006abcdef_R_2-2 A007abcdef_L_2_1 A007abcdef_L_2-2 ・ ・ ・ (文字はすべて半角です。) この複数枚のそれぞれのシート名から、アンダーバー(_)とハイフン(-)を削除したいです。 どうぞよろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- サブフォームへの新規レコードを一度に複数行を出したい
access初心者です。マクロやVBAもほとんどわかりません。 前任者がTHE CARDというソフトで見積書を作っていたのですが 最近データが壊れやすくなってきて、作り方も忘れたとのこと。 そこでaccessを使う事になったのですが、フォームで見積書を作り サブフォームには見積の詳細を出しています。 そこで無駄には見えますが、新しいレコードを追加した時に サブフォームに13行を自動的に出せないでしょうか? あと、そのカレントのレポートのみの印刷方法も教えて下さい。 わかりにくいかと思いますが宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- 1レコードのデータを複数行に分け通し番号を付ける
Access2010にて、1レコードのデータを複数行に分け、追番毎に通し番号を付ける方法がわからず困っています。 テーブル1の様に、1レコードにはデータ格納するカラムが4つしかなく、同じ追番でデータが5個以上ある場合は、次のレコードに同じ追番を入力して5個目以降のデータを格納しているテーブルがあります。 テーブル1 追番 カラム1 カラム2 カラム3 カラム4 1 データ1 2 データ1 データ2 データ3 データ4 2 データ5 データ6 データ7 3 データ1 4 データ1 ・ ・ ・ これをテーブル2の様に1レコードにデータ1個づつ格納し、追番毎の番号を振りたいと思います。 テーブル2 追番 番号 データ 1 1 データ1 2 1 データ1 2 2 データ2 2 3 データ3 2 4 データ4 2 5 データ5 2 6 データ6 2 7 データ7 3 1 データ1 4 1 データ1 ・ ・ ・ クエリ1の様なユニオンクエリで近いかたち(テーブル3)にできたのですが、同じ追番で番号が1~4まで埋まったら、5以降の番号を降る方法が分かりません。 クエリ1 SELECT 追番, 1 AS 番号, カラム1 AS データ FROM テーブル1 WHERE カラム1 Is Not Null UNION ALL SELECT 追番, 2 AS 番号, カラム2 AS データ FROM テーブル1 WHERE カラム2 Is Not Null UNION ALL SELECT 追番, 3 AS 番号, カラム3 AS データ FROM テーブル1 WHERE カラム3 Is Not Null UNION ALL SELECT 追番, 4 AS 番号, カラム4 AS データ FROM テーブル1 WHERE カラム4 Is Not Null; テーブル3 追番 番号 データ 1 1 データ1 2 1 データ1 2 1 データ5 2 2 データ2 2 2 データ6 2 3 データ3 2 3 データ7 2 4 データ4 3 1 データ1 4 1 データ1 ・ ・ ・ よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- bashのコピー&ペーストの方法を教えてください。
基礎的なことでかたじけないです。 マウスとALTキーを使わずに(マウスが接続されていない&TeraTerm経由の環境なので) abcdef12345abcdef という文字列の「12345」の部分をコピーして末尾にペーストする方法を教えてください。 abcdef12345abcdef ↓ abcdef12345abcdef12345 どうぞよろしくお願いいたします。
- ベストアンサー
- Linux系OS
- 複数行書き込むにはどうしたら良いのでしょうか?
<?php exec("sh -c 'echo \"aaa\" > write.txt'", $result); ?> で、ファイルにaaaと書き込めるようですが、 このようなシェルをexec、system関数から実行する方法で、aaaではなく、 aaa bbb ccc と複数行のデーターをファイルに書き込みたい場合は、どのようにしたら良いのでしょうか?
- ベストアンサー
- PHP
- レコードは2行あるのに「-1」が返ってくる
accessです。 テーブル1にレコードは2行あるのに、下記のコードを実行すると「-1」が返ってきます。 なぜでしょうか? ------------------------------------------------------------ Sub test() Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Set cn = Application.CurrentProject.Connection Set rs = cn.Execute("SELECT * FROM テーブル1") MsgBox rs.RecordCount rs.Close cn.Close Set rs = Nothing Set cn = Nothing End Sub ------------------------------------------------------------ ご教示よろしくお願い致します。
- ベストアンサー
- その他MS Office製品
- viコマンドで
次のようなテキストファイル内のabcdの行末にefを 一括で挿入する方法はないでしょうか? abcd abcd abcd abcd ↓ abcdef abcdef abcdef abcdef
- 締切済み
- その他(プログラミング・開発)
- perlで、後ろの行を読んで、前の行に書き込むには?
perl初心者です。 後ろの行を読んで、戻って、指定の行に、書き込む方法が、よくわかりません。 下記のようなファイルを読み込んで ---------------------------- アルファベット= 1A 2B 3C アルファベット= 1A 2B アルファベット= 1A 2B 3C 4D 5E 6F ------------------------------ 下記のように、「アルファベット=」にアルファベットを入れるには、どうしたらいいでしょうか? ------------------------------ アルファベット=ABC 1A 2B 3C アルファベット=AB 1A 2B アルファベット=ABCDEF 1A 2B 3C 4D 5E 6F -------------------------------- よろしくお願い致します。
- 締切済み
- Perl
- 空白無視して並べ替え
ABCDEFG, ABCDEF G, ABCDEFF を降順で並べ替えると ABCDEFG, ABCDEFF, ABCDEF G と並べ替えられます ABCDEFG, ABCDEF G, ABCDEFF の順で並べ替える方法はありますか?
- ベストアンサー
- オフィス系ソフト
お礼
正規表現とかで簡単に行くものかと思って模索していましたが、 かなり難しいのですね。 ありがとうございます!非常に助かります!