ORA-01476出たのでNVL/NULLIFの確認
Oracle ORA-01476 について
- 0除算なんだけど、NULLIF/NVLの違いが詳しく理解出来てなかったのでメモ
SQL> SELECT 2 / 0 FROM dual; SELECT 2 / 0 FROM dual * 行1でエラーが発生しました。: ORA-01476: 除数がゼロです。
- 分母の除数が0の場合はnullを渡す
SQL> SELECT 2 / NULLIF(0, 0) FROM dual; 2/NULLIF(0,0) -------------
NULLIF
- 第一引数と第二引数が一致した場合にnullを返す
- NVLと同様にnullの場合に0を返すイメージだったが、nullを返すという事で納得
参考
PHPのinteractive shell psyshを利用する
がbrew update で Permission denied
/usr/local/bin/brew: line 28: /usr/local/Library/brew.rb: Permission denied /usr/local/bin/brew: line 28: exec: /usr/local/Library/brew.rb: cannot execute: Undefined error: 0
brewがいる /usr/localに権限がないとか
この記事を参考にさせて頂きました
$ sudo chown -R `whoami` /usr/local $ cd /usr/local $ git reset --hard origin/master
あとは、psyshのgithub READMEを参照
- composerのpathを通してREADMEの通りに対応
export PATH=~/.composer/vendor/bin:$PATH
$ brew update && brew install composer $ composer global require psy/psysh # If asked what version constraint to use just type `*`
- pshsyを叩く
➜ /tmp psysh Psy Shell v0.7.2 (PHP 5.5.31 — cli) by Justin Hileman >>> echo "interactive mode にするためにpsyshって打つのを思い出すのが一番つらい"; interactive mode にするためにpsyshって打つのを思い出すのが一番つらい⏎ => null >>>
Karabinerの設定ファイルをDropboxで管理
設定方法はKarabinerの公式Documentにあった 公式Doc
<include> with Dropbox You can synchronize your private.xml by Dropbox or other file syncing service. private.xml <?xml version="1.0"?> <root> <include path="{{ ENV_HOME }}/Dropbox/private/Karabiner/core.xml" /> </root> Dropbox/private/Karabiner/core.xml <?xml version="1.0"?> <root> <item> <name>Dropbox Test!</name> </item> </root>
Vimでノーマルモードに戻った時に日本語入力OFFに変更
最近またVimキーバインドの練習を始めた
IntelliJ、SublimeText2もVimモードで利用中
- karabinerを利用して"Ctrl+["を押下後に日本語入力OFFにする
- 設定時に利用するappname,equalの表示方法
- アプリケーション > 対象のアプリを右クリック > パッケージ内容を表示
- Contensフォルダ内のinfo.plistを確認
CFBundleName -> appname に利用CFBundleIdentifier -> equal に利用
Karabiner private.xml
<?xml version="1.0"?> <root> <appdef> <appname>iTERM2</appname> <equal>com.googlecode.iterm2</equal> </appdef> <appdef> <appname>MACVIM</appname> <equal>org.vim.MacVim</equal> </appdef> <appdef> <appname>Sublime Text 2</appname> <equal>com.sublimetext.2</equal> </appdef> <appdef> <appname>IntelliJ IDEA</appname> <equal>com.jetbrains.intellij</equal> </appdef> <item> <name>Leave Insert Mode with EISUU (vim keybind apps)</name> <identifier>private.vim_keybind_apps_esc_with_eisuu</identifier> <only>iTERM2,TERMINAL,MACVIM,Sublime Text 2,IntelliJ IDEA</only> <autogen>__KeyToKey__ KeyCode::ESCAPE, KeyCode::ESCAPE, KeyCode::JIS_EISUU</autogen> <autogen>__KeyToKey__ KeyCode::BRACKET_LEFT, VK_CONTROL, KeyCode::BRACKET_LEFT, VK_CONTROL, KeyCode::JIS_EISUU</autogen> </item> </root>
参考にさせて頂きました
IntelliJ IDEAを使った置換
いつもの事だが、忘れるのでメモ
file内の検索と置換
- Edit > Find > Find in Path / Find in Replace
shortcut
- Cmd + Shift + F / Cmd + Shift + R
ジムに入会
2月1日に会社の近くに24時間営業のジムが出来た。 以前から気になっていたが、重い腰をあげて入会してみた。 出勤前に通って汗を流せればと考えている。 1月、2月、3月に関してはほぼ週末に運動できているため、運動の習慣化は出来てきたと思う。
目的
- 月間の走行距離を増やす
- コンスタントに50km/月
- 1月達成
- 2月70%
- 3月70-75%
- 週末のランニング時間を家族時間に割り当てる
- 1時間30分くらい土日にもらってる
- この時間だとどんなに頑張っても10km/1回が限界
- 実際は7km/1回くらい
- 朝方人間へのシフト
- いつかはやってみたいと思っていた
今までの課題
- 業後にジムに通おうと思っていたが、なかなか仕事終わりに行けるテンションと体力がない
- ついつい会社に残って仕事(ではない事もある)をしている
目標
習慣化(頻度)
- とりあえず強制入会の7月末まで頑張る
- 4月 2回/週
- 5月 2-3回/週
- 6月 3回/週
- 7月 3-4回/週
月間走行距離
- コンスタントに50km/月
週末
- 運動は行わず家族と過ごす時間を少しでも増やす
実践したい事
- ランニング中に英語教材
- 音読パッケージ
- 先行リスニング
- 音読
- シャドーなど
- 音読パッケージ
PHPとRubyの式展開(interpolation)
interporlationと書きたかった。だけです。
PHP
$name = "太朗"; echo "私の名前は、$nameです";
これだと、変数の後ろがアルファベットだと$namedesu になりわけわからない。
$name = "次郎"; echo "私の名前は、${name}です";
Ruby
>> first_name = "Michael" # 変数の代入 => "Michael" >> "#{first_name} Hartl" # 文字列の式展開 => "Michael Hartl"
ついで
今までPHPを書いてて文字列リテラルを"" / '' で迷う。というか既に実装されている部分が""なら"" 、''なら''で合わせていた。 しかし、上記のように式展開するとなると、基本は""だよな。と改心しました。 ''を使うのは改行コードを直接変数として利用したい時など。 以下は再度Railsチュートリアル第4章から参照
>> '#{foo} bar' # シングルクォートで囲まれた文字列では式展開されない => "\#{foo} bar"
や
>> '\n' # 'バックスラッシュ n' をそのまま扱う => "\\n"