CyberChaos(さいばかおす)

プログラミング言語、トランスパイラ、RPA、ChatGPT、データマイニング、リバースエンジニアリングのための忘備録

SQLプログラミングサイトのバグを発見!

2024-06-01 20:50:17 | SQL

SELECT EMPNO , ENAME , SAL / 0
FROM EMP
WHERE EMPNO = 7902

と特定のセル(SALカラムのEMPNO7902レコード)を0で割るとエラー表示になると予想したのだが・・・

EMPNOENAMESAL / 0
7902FORD

結果は空欄となってしまった。


※スッキリわかるSQL入門で紹介されているサイトでは、当然エラーとなった。
そもそもINSERTやDELETEすら使わせてくれないサイトではお話にならない。

SELECT EMPNO , ENAME , SAL * 0
FROM EMP
WHERE EMPNO = 7902

は当然0と表示される。


任意のカラムのデータに数値計算や関数計算をするSQLプログラム

2024-06-01 18:50:46 | SQL

問題
従業員の給料を2%上げることにしました。EMP表から従業員名(ENAME)と1.02倍した給料(SAL)を表示してください。

答えは・・・
SELECT ENAME , SAL * 1.02
FROM EMP

天邪鬼な俺は、給料を1000分の1にしてやりたくなったwww

SELECT ENAME , SAL / 1000
FROM EMP

ENAMESAL / 1000
SMITH0.8000
ALLEN1.6000
WARD1.2500
JONES2.9750
MARTIN1.2500
BLAKE2.8500
CLARK2.4500
KING5.0000
TURNER1.5000
JAMES0.9500
FORD3.0000
MILLER1.3000

さらに平方根を表示したり、sinΘにして表示したりwww

SELECT ENAME , SQRT(SAL) , SIN(SAL)
FROM EMP
ORDER BY SAL

ENAMESQRT(SAL)SIN(SAL)
SMITH28.2842712474619020.8939696481970214
JAMES30.8220700148448830.9454647941364737
WARD35.35533905932738-0.3465363519963052
MARTIN35.35533905932738-0.3465363519963052
MILLER36.05551275463989-0.5805130081563131
TURNER38.72983346207417-0.9939019569066535
ALLEN40-0.8012247906768953
CLARK49.49747468305833-0.4279919714449212
BLAKE53.38539126015655-0.5442234412178194
JONES54.5435605731785740.08812847214728746
FORD54.7722557505166140.21918997428281808
KING70.71067811865476-0.9879664387667768



任意の条件で並び替えるSQL文

2024-06-01 17:15:04 | SQL
というSQL学習サイトを利用してみた。

サンプルデータのHIREDATEカラムの日付が新しくなる順で並べ替えてみた。
SQLプログラムは・・・

SELECT *
表示して下さい (何を?)全部
FROM EMP
どこのデータから? EMPテーブルから
ORDER BY HIREDATE
並べ替えて下さい  (何で?) 雇用日付で

結果は・・・


EMPNOENAMEJOBMGRHIREDATESALCOMMDEPTNO
7369SMITHCLERK79021980-12-1780030020
7499ALLENSALESMAN76981981-02-20160030030
7521WARDSALESMAN76981981-02-22125050030
7566JONESMANAGER78391981-04-02297520
7698BLAKEMANAGER78391981-05-01285030
7782CLARKMANAGER78391981-06-09245010
7844TURNERSALESMAN76981981-09-081500030
7654MARTINSALESMAN76981981-09-281250140030
7839KINGPRESIDENT1981-11-17500010
7900JAMESCLERK76981981-12-0395030
7902FORDANALYST75661981-12-03300020
7934MILLERCLERK77821982-01-23130010

SELECT *
で全てのカラムを表示する。
任意のカラムのみ、例えばJOBカラムのみ表示したければ
SELECT JOB
と書けば良い。

なぜいきなりこんなSQL文をネタにしたのかというと、現在働いている現場のピット・基礎・外周部埋立の再生砂とドロコン(流動化処理土)の日付ごと、使用した工区や箇所ごとの使用体積記録を作っておけと指示されたからだ。
自分が納入時や使用時に立ち合い、記録したものは分かるが、他人が担当した時のものは調べないと分からない状態にあった。
調べていくと、日付がバラバラになって割り出された。これをEXCELに判明した時にその都度書き込んでいったら日付がバラバラになってしまった。 
いちいち並べ直していたら時間がかかるのでなんとかしたいと思ったのがきっかけだ。

ちなみにMySQLでEXCELデータを操作する方法の本を見つけたので、即ポチった。



有料のアドオンも出ていたが、そんな単純な下らないことでいちいち金を取るな!と思った。
後日、俺様がChatGPTを使ってアドオンを作ってみたい。
成功&完成の暁には、無料でソースコードを公開する。

ムラマツDN

2024-06-01 16:09:35 | 音楽・楽器
ヤフオクでかなり使い込まれたDNを入手した。約170000円。
50年前に製造されたらしい。
管体が厚く、重めで結構ズシリとくる。

使ってみたら低音・中音が全く鳴らないので、キーが歪んでいるのだろうと思い、新宿のムラマツに修理の見積もりに出したら、左手親指のHキーのタンポが虫食い状に欠けているので、これを直せば音は出せるようになると。

修理代はわずか4000円。

他のタンポはもうそろそろいい加減交換したほうが良いかも、というくらい変色してトーンホールの跡も深目についていた。 
※ムラマツの新型タンポには残念ながら対応していないとのこと。キーカップが小さいから合わないらしい。

しかし、応急処置ということで一旦、Hキータンポのみの交換で引き取ってきたのだが、恐ろしいくらいの爆音でダークで重厚な音を奏でた。

緻密というか極めて濃厚というか、表現し難い音色だ。

所々錆びてメッキが剥がれて見窄らしいが、そこまで使い込まれた理由がよく分かった。















ムラマツは抵抗感が強く、使いこなせなかったので、15年前位にPTPを手放してしまった。

今はEXとDNがあるのだが、EXはヤフオク行きになるだろう。

今ならムラマツを吹きこなせる状態になった。息圧も肺活量も十分、息の効率の良い使い方も身についた。

いずれPTPを再び手に入れたい。



プラットフォームエンジニアとは?

2024-06-01 15:39:17 | C / Visual C++
某問答サイトで秀逸な回答が出たので転載する。

アプリケーションプログラマーは何かしらのOS、SDK、フレームワーク等のシステムソフトウェアの上でプログラミングをしますが、プラットフォームソフトウェアエンジニアは、これらプラットフォーム側を開発します。

具体的には、
OSの移植
デバイスドライバーの開発
API、SDK、ライブラリー、フレームワーク等を開発します。

特にOSの移植やデバイスドライバーの開発では、ソフトウェアの知識に加えて、ハードウェアの知識とOSの知識が必要になります。

回路図を読み、それを動作させるデバイスドライバーやOSの下層部分をプログラミングして、適切にOSに組み込み、その環境をアプリケーションプログラマーに提供します。

なるほど。
じゃあ、
アスキー出版局の
WDMデバイスドライバプログラミング完全ガイド

とか

秀和システムの
作りながら学ぶ
OSカーネル
保護モードプログラミングの基本と実践

みたいな本を読んだり、Githubで関連するソースコードを漁ったりすればよいのだな?






3Dスキャナー scaniverse

2024-06-01 07:17:13 | アイデア起業・アイデア売買

Scaniverse - Apps on Google Play

Scaniverse - Apps on Google Play

Capture Life in 3D. Scan, edit, and share meshes or gaussian splats with ease.

3Dスキャナーのscaniverseを試してみた。

便所のドアノブをスキャンしてみた。

こちらは撮影した写真。

スキャンした対象物を点群データ化し、3Dレンダリングするらしいが…



















生成された3Dスキャンデータを動かしてみた所をキャプチャーしてみた。

数日前にwebの広告記事で知ったから早速インストールして試した結果はイマイチ。

やはり無料のアンドロイド用アプリに高品質を求めるのは酷だと思った。

仕事等で本格的に使いたければ、有料のPC版を使うべきなのだろう。もちろん、専用の機材でスキャンしなければならないはず。