09/05/11 20:05:04
>>259
#!/usr/bin/bash
mysql --user=root --password=password -e "USE jinji_kanri; SELECT * FROM tbl_employee WHERE dpt_code <> 10;" | awk '$1 ~ /^104/{print}'
270:デフォルトの名無しさん
09/05/11 20:06:58
>>268
「~かもね」=誰かやれよ
271:269
09/05/11 20:11:53
awkじゃなくgrepで用が足りるんだが、
>>250でawk使ってるからそれに合わせた。
短く書こうとすれば結構短くなるもんだ。
Rubyでももう少し簡潔にできるのでは?
272:デフォルトの名無しさん
09/05/11 20:32:55
なんで | awk '$1 ~ /^104/{print}' なんて書いてるの?
db側でやっちまったほうが手っ取り早く見えるが。
mysqlはwhere句の中で正規表現使えないのか?
postgresqlなら and foo ~ '^104'と書く。
クエリが複雑になったらRubyで書くとカンタンやね。
sshと組み合わせてリモートで処理させるときは、
シェルスクリプトでやっちゃったほうがマシなときもある。
273:デフォルトの名無しさん
09/05/11 20:45:15
MySQLでもREGEXPで正規表現は使えるから
そのほうが簡単だろうけど
274:272
09/05/11 21:24:39
あ、失礼。
> なんで | awk '$1 ~ /^104/{print}' なんて書いてるの?
部分はそもそもの発端である>>250にむけてのレス。
275:デフォルトの名無しさん
09/05/11 21:28:47
AWKとかどうでもいいでしょう。オブジェクト指向言語じゃないんだから。
オブジェクト指向の効率が悪いっていう証明をしてくれよ
276:デフォルトの名無しさん
09/05/11 21:34:40
>>272
>>250を見ると関数を定義してるから、
sql "SQL文"
で済むみたいだけど。
ruby使うともっと簡単になるの?
もし、単にSQL文並べるだけよりも楽になるなら便利だよね。
277:デフォルトの名無しさん
09/05/11 22:41:39
>>275
じゃあ、C言語+構造化で組むと3ヶ月でできる仕事を
C++とオブジェクト指向で組んだら何ヶ月でできる?
仕事って数字出せなきゃ駄目なんだよね・・・
278:デフォルトの名無しさん
09/05/11 23:11:11
>>277
おまえのところは、
アセンブラで組んだら3ヶ月でできる仕事だから、
C言語使ったら何ヶ月かかるか見積もってね
という仕事を請けてるの?
279:デフォルトの名無しさん
09/05/11 23:13:59
>>278
は?
お前がオブジェクト指向云々の話がしたいっていうから
比較対象でC言語出しただけだよ
好きなのでいいよこだわりねーし
オブジェクト指向でやると工数がどうにかなんじゃなかったの?
280:デフォルトの名無しさん
09/05/12 01:21:38
かくして
猿猿合戦の火蓋は切って落とされたのであった
281:デフォルトの名無しさん
09/05/12 04:12:27
>>272
Ruby含めてDBライブラリを持つ言語を使わないとトランザクション
とかエラー処理周りを書くのにえらい苦労すると思う。
検索専門だったりデータをガツンと丸ごとインポートする程度なら
シェルスクリプト+αもありだし実際使うけど、エラーも考慮して
継続的にデータを出し入れする「ちゃんとした」DBアプリを作るの
であればawk云々の出る幕はないと思うんだがなぁ。
とりあえず>>250はクエリで複数行を引っ張ってきてから手元で
絞り込みをかける奇妙さといい、そもそも何で正規表現使っている
のかなとか例としては謎が多すぎる。
282:デフォルトの名無しさん
09/05/12 09:57:10
OOPなど余計だ(キリッ)などと言っている人が、
得意満面で余計なことをAWKでしてる、という話。
283:デフォルトの名無しさん
09/05/12 10:07:45
>>282
いいえw
てか何でAWK?
俺はHaskell派なんだけど・・
284:デフォルトの名無しさん
09/05/12 10:18:59
>>283
お前じゃねーよw
>>249-251を見れw