ゲンゾウ用ポストイット

Java、Groovy、Linux関連の備忘録

order by実行時のNULLの扱い

新人の頃のメモ書きを見返していたら、Oracleでは NULL が常に最大値扱いとなるとあったので、 以下のDBについてどのような挙動になるか調べてみた。

環境


genzouw@genzouw-macbook-pro:~$ mysql -V
mysql  Ver 14.14 Distrib 5.6.13, for osx10.8 (x86_64) using  EditLine wrapper
genzouw@genzouw-macbook-pro:~$ psql -V
psql (PostgreSQL) 9.3.1

調査

以下の様なテーブルとデータを作成してみた。

MySQL

PostgreSQL

それぞれソートしてみる。

MySQL


mysql> select * from mytable order by column1;
+----+---------+
| id | column1 |
+----+---------+
|  5 | NULL    |
|  3 | 1       |
|  4 | 2       |
|  1 | a       |
|  2 | b       |
+----+---------+
5 rows in set (0.00 sec)

PostgreSQL


testdb=> select * from mytable order by column1;
 id | column1
----+---------
  3 | 1
  4 | 2
  1 | a
  2 | b
  5 |
(5 rows)

ということで、ソート時の NULLの扱いが異なる

まとめ

Oracleは試していないが、メモを見る限り PostgreSQLと同じ

MySQL PostgreSQL Oracle
最小 最大 最大

Redmineで新規登録する際に便利なブックマークを作成するためのブックマークレット

作ってみた。

登録方法

Chromeで試した。

1.以下のソースコードをコピーする。

(function(){
var params = [];

inputs = document.getElementsByTagName('input');
for (var i = 0; i < inputs.length; i++) {
    var c = inputs[i];
    if (c.type === "text" || (c.type === "checkbox" && c.checked)) params.push(c.name + "=" + c.value);
};

inputs = document.getElementsByTagName('select');
for (var i = 0; i < inputs.length; i++) {
    var c = inputs[i];
    params.push(c.name + "=" + c.value);
};

document.location.href = document.location.href + "?" + params.join("&");
})();

2.ブックマークに登録する。

ticket_template_maker などで登録。

3.Redmineの新しいチケットページを開き、テンプレート登録したい内容を入力

4.tiket_template_makerを呼び出す。

5.新しいチケットページが再表示されるので、こちらをブックマーク登録する。

hoge_project_template などで登録する。

後は、新しいチケットを登録する際に hoge_project_template ブックマークを呼び出せばOK。

Macでgit-svnを使ってプロジェクトドキュメントをダウンロードするとファイルが管理対象外として扱われる

事象

Macでプロジェクトドキュメントを以下のコマンドでcloneした。

git clone -s http://hoge-server/path/to/the/project/

clone下ばかりのクリーンなフォルダのはずなのに、 何故か日本語ディレクトリの幾つかが管理対象外扱いとなっている。

どうも濁点半濁点を含む日本語名フォルダがおかしくなる模様。

対処法

どうもMacは一般的なUTF-8とは異なる文字コードを利用しているようだ。

簡単に説明すると、ファイル名の見た目はLinux等と一緒だが、文字コード的に濁点の扱いが微妙に違うためである。 ある意味、文字化けの類の問題である。

http://btmn.jp/2012/08/22/git-1-7-12-utf8-mac/

以下のサイトに解決方法が記載されていた。

例によってHomebrewなんですけど、--unicode-pathオプションをつければ、 そのパッチが適用されて、問題解決版の/usr/local/bin/svnが手に入ります。

brew install subversion --unicode-path

結果

genzouw@genzouw-macbook-pro:~/fuge_dir$ git status -s
? 01_仕様書/xxx_テーブル定義書/                                                                                                                                                                                                             ? 01_仕様書/Hage画面仕様書(開発用).xlsx

全く治ってなかった。

対処法その2

git-svnで問題が出たので、svnが問題だ!とおもったのだが、どうやらgitの問題の模様。

http://btmn.jp/2012/08/22/git-1-7-12-utf8-mac/

実は以下のコマンドを実行するだけで解決する。

genzouw@genzouw-macbook-pro:~/fuge_dir$ git config --local core.precomposeunicode true

参考

ヘッダー右端にほんの少し余白が表示されてしまう場合の対処

問題

ヘッダー右端にほんの少し白い余白が表示されてしまう場合の対処について。
以下のようなページを作成すると発生。

対処

  • div[data-role=page]から以下の要素を除去
    • data-fullscreen="true"
  • div[data-role=head]に以下の要素を追加
    • data-position="fixed"

2013年06月15日のツイート

2013年06月12日のツイート

2013年06月10日のツイート