2019-09-04 23:24 [Wed]
奥深いので、突っ込み過ぎ注意か
» 日記
自分のレベルの低さってヤツを自覚する。今日もまたエクセル弄り。
今回は二つの値を比較したかった話。
AとBが等しくない場合の式として、私は「A != B」と書いてしまった。
するとエクセル君エラー!なになに、また機嫌が悪いの?
小窓がポップアップして、別の演算子へ変更すると伝えてきた。
何が起こるのかと試してみたら、「A <> B」に変換された。
そして、やりたかった事が正常に行えた。頭よし。
エクセルの場合は「!=」ではなく、「<>」らしい。私的には馴染みがない。
Wikipediaが言うには、「!=」はC言語ライクな書き方だそうだ。
私はC言語系ばかりやっているので、「!=」がすぐに出てくる。
関係演算子 - Wikipedia
https://ja.wikipedia.org/wiki/関係演算子
Wikipediaの上リンク先のページが面白い。なるほどな。
「<>」はBASICライク、Pascalライクとあった。
BASICは少し触っただけで、全然やった事がない。
比較演算子なんて基本中の基本なのに、BASICの比較演算子が頭にないのは、
基本(BASIC)が出来ていないのと同じだ。うあー。
あ、Pascalはさっぱり触った事がないよ!
そして、「<>」はSQLでも使われている。これは酷い。
直接的に式を書いた事はない。参照したり、確認した事はある。
それにも関わらず、「<>」の事なんて、すっぽりと頭から抜け落ちている。
エクセル君に今日初めて教えて貰ったレベルで覚えていないぞ。
更に驚きなのは、SQLには「等しくない」を表す書き方に種類がある事。
「<>」の他にも、「!=」も使えたのだ!
良かった、私が見た時はきっと「!=」の方だったのだな。
PostgreSQL 8.3.7文書 第 9章関数と演算子
https://www.postgresql.jp/document/8.3/html/functions-comparison.html
Postgreでは基本的に「<>」。「!=」は気遣いで「<>」に変換している模様。注意: !=演算子は構文解析で<>に変換されます。!=演算子と<>演算子に異なる処理を行わせる実装はできません。
エクセル君タイプだね。
いや、見えない所で変換している分、エクセル君よりも上手か。
MySQL :: MySQL 5.6 リファレンスマニュアル :: 12.3.2 比較関数と演算子
https://dev.mysql.com/doc/refman/5.6/ja/comparison-operators.html
「等しくない」の部分を探して、読んでみたけど良く分からない。
変換が入らずに、「<>」「!=」どちらとも解釈しているのだろうか。
分からん!
PostgreSQLとMySQL、使うならどっち? データベース専門家が8つの視点で徹底比較!
https://employment.en-japan.com/engineerhub/entry/2017/09/05/110000
ちなみに上リンク先のようなページも発見した。
「<>」と「!=」の話ではない。SQLの話。
今後の人生で、私が再びSQLと向き合う日が来るのかは不明。
参考程度に読んでみたよ。あったなーと懐かしい気持ちになった。
まさかエクセル弄りから、ここまで話が派生するとはな。
新しい事を知れたのは良いが、脱線か、これ。
みんな何処まで知っている話なのだろうか。怖くて聞けないわ。
自分のレベルが低い事は分かる。
しかし、どの程度に位置するレベルなのかが分からない。
これは一生負け組人生ですわ。どうしようもない、ムリゲー的な敗北感。
「自分には平均的な力量があるぞ!」
とか確認する術がないので、ずっと勝利するチャンスがない。
私はいったい何と戦っているのだ……。
公開する予定はないけど、個人的なエクセル弄りがまだまだ続く。早く終りたい
- 関連記事