技術とか戦略とか

証券レガシーシステムを8年間いじった普通のSEによるブログ。技術のみではなく趣味の戦略考察についても。PCから見た方が色々見やすいと思います。

情報処理技術者試験対策「select文の結果の結合等(集合演算子)」

今回は、select文の結果を結合する文法の紹介です。結果を結合するためには、集合演算子のUNION(重複排除したい場合はUNION ALL)を用います。実務では複数のselect文の結果を1回のSQL文発行で取得したいことが結構あるので、知っておくと便利です。情報処理…

Visual Studio 2017 C1083エラーの対処(stdio.hがない場合)

fatal error C1083: include ファイルを開けません。'stdio.h':No such file or directoryこんなエラーが出た時の対処法について。 ネットでは所説諸々出ていますが、私の場合はstdio.h自体がありませんでした。調べてみたら原因はこれでした。「Windows 10 …

Sakuraエディタのマクロをバッチファイルで複数ファイルに対して実行

表題の通りです。 実務で使う機会があったのでメモします。 置換するだけならgrep置換機能で良いのですが、古いバージョンだとこの機能が入っていませんし、ソート→マージ等の置換以外の機能を使いたくなることもあるので。 以下、例を用いて説明します。 【…

ブログを複数人で編集する方法を調べてみた

ブログを複数人で編集しないか、という話が来たので、その方法を調べてみました。 【はてなブログのブログメンバー機能を使う】はてなブログにそのままズバリの機能がありました。 http://help.hatenablog.com/entry/blog-members ただし、ブログ所有者が有…

情報処理技術者試験対策「SQL(副問合せ・相関副問合せ)」

今回は副問合せと相関副問合せの紹介です。副問合せは試験だけでなく実務でも頻出です。相関副問合せについては、副問合せでも同じ検索結果を出すことが可能なので実務では忘れがちかもしれませんが、試験には出題されますし、性能面を考慮すると相関副問合…

情報処理技術者試験対策「データベースの障害復旧」

今回は、データベースの障害復旧について説明します。試験頻出です。また、関連するファイル・概念の説明もついでに行います。 【データベースの復旧に用いるファイル・概念】 チェックポイント障害回復操作を開始すべき時点。一定時間感覚で訪れる。なお、…

COBOL:CONTINUEの挙動

COBOLのCONTINUEの細かい挙動を説明したページがいつの間にか消えていたので、バックアップ代わりに記事化します。 【CONTINUEの挙動】「CONTINUE」は、何もしないことを明示するための命令です。分岐が発生する場合に、ある分岐の場合は何もしないというこ…

java:今さらながらJava8新機能について調べてみた(Optional)

Java8でどのような機能が追加されたのか確認していました。まだ紹介していない重要な機能として「Optional」があるので、今回はそれについて書きます。 Optionalとは、値を持たない場合がある(nullである)ことを表すクラス(コンテナオブジェクト)です。O…

java:今さらながらJava7・8新機能について調べてみた(Files)

Java7・8でどのような機能が追加されたのかを確認中です。今回は「Files」についてです。 FilesはJava7から追加されたファイル入出力のクラスで、従来の書き方に比べてすっきりした書き方ができますまた、Java8ではFilesをStreamで処理することもでき、メモ…

java:今さらながらJava8新機能について調べてみた(Stream)

Java8でどのような機能が追加されたのかを確認中です。今回は「Stream」についてです。 Streamを使うことで、for文を使用することなく配列やCollectionなどの集合体を扱うことができるようになります。出力条件の設定や重複排除、ソート等の操作も、メソッド…

java:今さらながらJava8新機能について調べてみた(ラムダ式)

以前の記事で書いた通りJava6までしか知らなかったので、Java8の新機能について調べています。Java8は色々と言語仕様が追加されており一気に調べきれないので、1機能ずつ調べていきます。今回は「ラムダ式」についてです。 ラムダ式どころか、その背景にあ…

java:今さらながらJava7新機能について調べてみた

新人研修時点ではJava6だったので、Java7やJava8の文法がわからず実務で苦労しています。というわけで、今回はJava7の新機能について調べてみました。 といってもJava7は7年前にリリースされているので、既に色々なページでまとめられています。例えば以下…

情報処理技術者試験対策「SQL(重複排除と集計)」

今回は重複排除(distinct句)と集計(group by)の紹介です。どちらも挙動が似ているのでまとめて紹介します。実務で使うだけでなく、どちらも試験頻出です。 【機能説明】・重複排除 select文の結果について、重複を排除することができる。 ・集計 指定したカ…

eclipseのショートカット自分用まとめ

Eclipseをまだ使いこなせておらず生産性が上がらないので、身近な所からということでショートカットキーの練習をしていました。 他の人の操作を見たり実際に試したりして、最優先で使いこなせるようになりたいと思ったショートカットキーは以下です。(Windo…

java:CLASSPATHの基礎を調べてみた

そういえばCLASSPASSについて知識があやふやだな…自分が読んだ入門書にも書いてなかったしな…と思ったので、入門的な内容ですが簡単に調べてみました。 ・CLASSPATHって(ytp.ne.jp) http://www.ytp.ne.jp/tech/java/sineruka/classpath.html CLASSPATHとはど…

deleteの前にselectをしてミスを防ぐ

SQL

作業ミスを防ぐためのちょっとしたテクニックです。参考書にはあまり載っていない暗黙知的なテクニックで、運が良ければ先輩から教えてもらえるのですが、逆に言うと運が悪いと教えてもらえないかもしれないので、文章に起こします。 特にオートコミット(co…

JUnit:テストケース毎の初期化

JUnitで複数のテストを行う際、あるテストが以降のテストに影響を与えてしまうことがあります。あるテストが以降のテストに影響を与えると、テストの実行順を変えたりテストケースを変えたりするだけで今まで通っていたテストが通らなくなるので、望ましい状…

情報処理技術者試験対策「SQL(取得結果に対する条件判定)」

SELECT文で取得した結果に対して、CASE式を使用することで条件判定が可能です。条件判定を行うことで、SQL文の出力結果を変えることができます。プログラムのIF文の判定をSQL文の中で行っているようなイメージであり、プログラムを作るまでもない作業で使用…

java:2通りの例外の受け取り方

入門書にも書いてある内容ですが、COBOLやC言語にはない挙動なので備忘のためにまとめます。 【パターン1:catch文で例外を受け取る】①で例外が発生すると、catchに遷移する。 public static void main(String args) { try{ ① } catch(Exception e){ …例外…

JCLの紹介

JCL

もしもメインフレーム(ホスト)を使うシステムの担当になってしまったら、必ずと言って良いほどお世話になるのがJCLです。JCLとはメインフレームのプログラムを動かすためのスクリプトのようなものであり、Unixのシェルスクリプト、Windowsのバッチファイル…

COBOL概論

社内でCOBOLの概要について発表したので、資料を公開します。COBOLについて、背景とコーディングの簡単な説明を記載しています。視聴者の方が自力でリファレンスを引いて調べられるようになるのを目標に作成しています。 https://1drv.ms/p/s!AivF3bzWXOzuhH…

ブログで趣味を取り扱う理由

考えていることがあるので、なぜこのブログで趣味(戦略考察)を取り扱っているのかを書きたいと思います。 趣味を取り扱う理由を一言で言うと、新たなサービスを立ち上げるきっかけになり得るからです。 元々は対戦ゲームが趣味で、勝つためのメソッドを高…

情報処理技術者試験対策「SQL(取得結果に対する演算子の利用)」

SELECT文で取得した結果に対して、演算子を使うことで文字列結合や計算が可能です。これを使うことで、プログラムで実装していたロジックをSQL文に組み込むことが可能になりますし、副問い合わせで使用すれば「抽出→抽出結果をプログラムで加工→加工した結果…

ゲーム理論:物事をゲームとして正しく認識するための方針

ゲーム理論は話だけ聞くと簡単そうに見えますが、実際に適用しようとすると色々な壁にぶつかります。一番最初に必ずぶつかる壁として、適用対象をゲームとして正しく認識することが困難という壁があります。この認識が誤っていると、ゲーム木や利得表を正し…

情報処理技術者試験対策「SQL(テーブル結合)」

今回はSQL文のテーブル結合について、例を出して簡単にまとめます。 情報処理技術者試験で出題されるのもありますが、内部結合と左外部結合は実務でも頻出です。プログラムを作る時に必要になるだけでなく、テストデータを確認する時に使用することもありま…

麻雀の役の分類

仕事に関係のない記事ですみません。 過去に麻雀のルールを一読して戦略系の記事にしたのですが、役の一覧まで目を通せていなかったので目を通しました。 その上で、麻雀の役を自分なりに分類してみます。 なお、ローカルルールは取り扱わないことにします。…

ゲームに熱中する心理的仕掛けとゲーミフィケーション

ゲームには中毒性を高めるための心理的仕掛けがあります。また、その心理的仕掛けを他分野に応用する「ゲーミフィケーション」と呼ばれる手法が現在注目を浴びています。今回の記事では、心理的仕掛けとゲーミフィケーションを簡単に書きたいと思います。 【…

java:絵文字を含む文字列を1文字ずつ切り出す

←こんな感じの絵文字を資料中に使うのが今の職場で流行ってます。 そういえば実務で絵文字を取り扱うシステムに携わったことがなかったので、興味本位で調べてみました。 ついでに、絵文字を含む文字列を1文字ずつ切り出すjavaのサンプルコードも作りました…

Excelでモンテカルロシミュレーションを試してみた

Excelでごく簡単なモンテカルロシミュレーションを試してみる記事です。 モンテカルロシミュレーションとは、ランダムな試行を繰り返すことで解に近い結果を導き出すもので、複雑で解を出すのが困難な問題に対して適用すると比較的短時間で解に近い結果を得…

ExcelでINSERT文を作成

Excelを使ってSQLのINSERT文を作成してみる記事です。 Excelの機能を使うことで、効率良く大量のINSERT文やUPDATE文等を作成できます。 臨時の運用対応ではデータが公表されてから30分以内にDBに反映させなければならない等、限られた時間でのデータ補正が必…