yucco

謎解きが趣味な駆け出しエンジニアです。

yucco

謎解きが趣味な駆け出しエンジニアです。

マガジン

  • へっぽこ学習記録

  • コードのあんちょこ。

  • MySQLにまつわるメモ

    MySQLが「たまに必要になる」程度の人が、たまに必要になる程度のクエリ文の書き方について、毎回忘れるようなことをメモしている記事のまとめ。

  • わたしがよく見るやつ

    全ての記事は未来の自分の為に書いているのですが、その中でも特に未来の私が良く読みに来るより抜き記事をまとめてあります。 そう、これもまた未来の私の為のまとめ。

  • GASを便利に使いたい

最近の記事

【MySQL】日付で絞り込む

Date型のカラムを日付で絞り込みたいときはこう SELECT * FROM sample_table WHERE 登録日時 <= '2024-06-25 00:00:00' 普通に文字で、Date型のフォーマットに乗っ取った日時を渡してあげればそれでOK。 「このSQLを実行した日のその月」とか「その前月」とかやろうとするともうちょっと色々面倒ですが、とりあえず人力で日付指定出来る状況ならこれでOK。いつも忘れるのでメモ記事でした。

    • コピー元と全く同じ状態になるようにバックアップを取るバッチを作る

      前回の記事 では、「コピー元からコピー先へ、コピー先より新しいフォルダ・ファイルをコピーする」というだけの処理を作りました。 ただ、これだと、元フォルダ内でリネームしたり消したりしたファイルも、そのまま蓄積していってしまいます。バックアップとしてはそういう挙動にしたい場合もあるので一概にダメではないのですが、コピー元とコピー先を常に全く同じ状態に保っといたほうが便利そうだな……と思ったので、そのようなバッチを作ります。 結論robocopy D:\ F:\backup

      • バッチ+タスクスケジューラを使って、内蔵HDDの中身を自動で外付けHDDにバックアップする

        パソコンが壊れました。 早々に新しいのを買ったのですが、その際、以前のPCに仕込んでいた自動バックアップバッチが灰燼に帰したので、もう一度仕込みながら、noteというクラウドにもバッチのバックアップを残しておこうと、そう言う記事です。 全て無料でご覧頂けますが、もし、突然PCが壊れてボーナスを吹っ飛ばした私を憐れんでくださる方がいらっしゃいましたら、有料部分を購入して頂けたら大変嬉しく存じます。どうでもいい余談が読めます。 とりあえず、わかる人向けの結論以下が、「Dドラ

        ¥100
        • 2024年上半期のフライングふりかえり

          えっ2024年がもう半分終わるんですか?!の気持ちと、えっまだ2024年って半分なんですか?!の気持ちが半々くらいです、って書こうとしたらまだ全然半分まではあと一ヶ月あることに気付きました。やっぱり長いや2024年。 5月中一本も記事が無くて、連続投稿記録途切れちゃうのも勿体ないので、フライング振り返りでもしようかと思います。12月にもそんなことやってましたね。 2022年くらいから、急に一年が長く感じるようになってきて、体感高校時代くらいの時間感覚です。 たぶん、子ども

        【MySQL】日付で絞り込む

        • コピー元と全く同じ状態になるようにバックアップを取るバッチを作る

        • バッチ+タスクスケジューラを使って、内蔵HDDの中身を自動で外付けHDDにバックアップする

          ¥100
        • 2024年上半期のフライングふりかえり

        マガジン

        • MySQLにまつわるメモ
          6本
        • コードのあんちょこ。
          125本
        • へっぽこ学習記録
          184本
        • わたしがよく見るやつ
          25本
        • GASを便利に使いたい
          19本
        • ぱいそん3がかけるようになりたい。
          73本

        記事

          【MySQL】自動採番されるID番号だけが登録されているテーブルにデータを追加する

          いっつもやり方分からなくなる INSERT INTO `スキーマ`.`テーブル名`(`項目名`) VALUE(0); これで何度も登録すれば自動で採番された番号が入ります。 複数項目あるテーブルなら、自動採番される項目だけ空にしてINSERTすれば良いんですけど、自動採番される項目しかないIDテーブルに追加するの、どうしたら良いかすぐに解らなくなるので。

          【MySQL】自動採番されるID番号だけが登録されているテーブルにデータを追加する

          【GAS】HTMLサービスを使ってクリックできるURLを表示したり、非同期処理問題をなんとかする

          やりたいこと①:スプレッドシートの「入力用」シートに入力した情報を、「出力用」シートに転記・整形して、出力用シートをPDFとして書き出すという処理をボタン一つでやりたい。 ②:①で書き出してドライブに保存したPDFのURLを画面上に表示し、クリックで表示できるようにしたい 問題点① 転記・整形する処理とPDF書き出し処理を別のfunctionとして記述すると(おそらく)処理スレッドが分かれてしまう関係で、転記した情報が反映されていないままの出力用シートが出力されてしまう

          【GAS】HTMLサービスを使ってクリックできるURLを表示したり、非同期処理問題をなんとかする

          【GAS】セルから取得したDate型の日付をStringにフォーマットする

          セルに入力した日付を取得すると、Date型になってしまっているので、必要に応じてフォーマットします。 結論function Date型をStringにフォーマット(値){ // Date型かどうかを確認 if(Object.prototype.toString.call(値) != "[object Date]"){ throw Error("引数はDate型で渡してください") } // フォーマットして返却 return Ut

          【GAS】セルから取得したDate型の日付をStringにフォーマットする

          【Python3+Firestore】PythonアプリからFirestoreにアクセスする2024

          以前の記事 を参考に新しいアプリを作ろうとしたら動かなかったので情報を更新していきますよっと。 今回は、既にFirestoreデータベースは作ってある前提でさくっとデータを取得しに行きます。とりあえずテスト用にデータベースを作ってみたい場合はGUIからやればすぐできる。 公式ドキュメントより始めよはい 言われた通りにやってみる管理用パッケージをインストール $ pip install --upgrade firebase-admin 推奨パッケージが変わっています

          【Python3+Firestore】PythonアプリからFirestoreにアクセスする2024

          【Java】StringからIntにしたりDateからStringにしたりStringをDateにしたり

          テスト用に、データベースに入れる情報を用意→データベースに登録→登録した情報を取り出して比較、というロジックを作ったら、入れる用のデータはJSONで受け取る前提だから全部Stringで渡さなきゃいけなくて、出してくるデータはテーブルカラム通りの型で出てくるもんだから困ったね、ということで全部変換していくよ! とりあえずざっくりキャストできればOK!細かいフォーマットの違いとか例外が発生する文字が入ってきたらとかスレッドセーフとかの面倒なことは考えないよ!! Stringから

          【Java】StringからIntにしたりDateからStringにしたりStringをDateにしたり

          【Java+MyBatis】データ登録系API作成時に、登録に成功したレコードの、自動採番で付与されるIDを返却する

          「このデータを登録しておくれ」「はいよ、登録したよ、レコード番号〇〇番として登録できたよ」というAPIを作る際、肝心の「レコード番号〇〇番として登録できたよ」をどうやって取得しようか。というお話。 レコード番号は通常自動採番に設定するじゃないですか。いちいち最新のレコード番号取得して+1してとかしないじゃないですか。あんまり。 でも、SQLでInsertする処理は登録処理をするだけで、「今まさに登録したこのレコードで自動採番された番号はこちらです」は返してくれないじゃないで

          【Java+MyBatis】データ登録系API作成時に、登録に成功したレコードの、自動採番で付与されるIDを返却する

          【GAS】APIを叩いてPOSTでJSONを送信したり、その通信をPostmanでエミュレートしてみたり

          GASからAPIのエンドポイントへアクセスして、POSTで情報送信出来るようにしたいの巻きです。 結論// データベース登録用会員データ.gs// sampleclass 会員データ{ constructor(名前, 電話番号, メールアドレス){ this.name = 名前; this.tel = 電話番号; this.mail = メールアドレス; } JSONとして取得(){ return stringify(this) }} //

          【GAS】APIを叩いてPOSTでJSONを送信したり、その通信をPostmanでエミュレートしてみたり

          【GAS】VLOOKUPみたいなことをfindを使って華麗にやる

          VLOOKUPがそのままGAS上でも使えれば何も問題ないんですが 結論function lookup(target_code){ // A列に商品名、B列に商品コードが入っているものとする const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const vals = sheet.getDataRange().getValues(); // シートの値を二次元配列化しておく //

          【GAS】VLOOKUPみたいなことをfindを使って華麗にやる

          【Python3】例外発生時、Exceptionにファイル名と行数を追加してエラーメッセージをわかりやすくする

          「float divition by zero」と一言だけ言われても困るんですよ。 結論sys.exc_info()で取れる # 例外を一旦受け取って再送しているファイルを想定import systry: result = 1 / 0 # ZeroDivisionErrorが起きるexcept Exception as e: exception_type, exception_object, exception_traceback = sys.exc_inf

          【Python3】例外発生時、Exceptionにファイル名と行数を追加してエラーメッセージをわかりやすくする

          2023年ふりかえり

          特に書くことはないんですが、折角結構続いていた〇ヶ月連続投稿の記録が途切れてしまうのも嫌なので、今年何をやっていたかをちょっと振り返ってみようかななんて思います。 今年の一本目pythonで、関数から、手軽に複数の戻り値を返したかったようですね。 何に使ったかはもう覚えておりません。 こんな戻り値の返し方は大層不親切に思いますが、なんかのパッケージでこれ使ってるんだよな確か。最初の戻り値要らないから-で受け取って抹消する、っていうTIPSだけ覚えています。 今年書いた中で

          2023年ふりかえり

          【Javascript】「今週かどうか」を判定する

          ある日付が、「今週の出来事かどうか」を判定します。 結論function is_this_week(target_date){ // target_dateは、確認したい日付をDateオブジェクト化したものを渡す // 【STEP1:今日の日付を取得する】 let today = new Date; let today_day_index = today.getDay(); // 曜日が0~6までの数字で取れます // 【STEP2:直前の日曜日と次の土曜日を取得

          【Javascript】「今週かどうか」を判定する

          【Python】Seleniumのログ出力を止めたいんだ…!

          Seleniumを使っているプロジェクトで、こちらの記事でまとめたやり方でログ出力をしておりまして で、デバッグ用に全体のログ出力レベルをDEBUGまで下げたところ、Seleniumが逐一何もかもすべてログを吐くもんだからログが流れまくっちゃってとても困る!!!君はちゃんと動いている!!大丈夫!!!君のログレベルは別にINFOとかWARNINGとかでいい!! これはもうパッケージの中身弄るしかないのか…?! と思って調べたらちゃんと方法がありました。 Seleniumで

          【Python】Seleniumのログ出力を止めたいんだ…!