SQLなら俺に訊け [無断転載禁止]©2ch.net

1デフォルトの名無しさん
垢版 |
2017/07/14(金) 07:40:53.63ID:HFjsarQi
さあ
2024/10/28(月) 15:33:24.71ID:ehQdeP61
>>280
MS-Access
2024/10/28(月) 16:27:15.25ID:xaz6ouOz
>>283
63bitで最大4Gまでしか扱えないものはノーサンキュ
285sage
垢版 |
2024/10/28(月) 17:18:52.43ID:ehQdeP61
これが条件後出しカッコ悪いというやつか
2024/10/28(月) 17:25:09.25ID:Hp6dJGZ5
63bit 63bit 63bit 63bit
最大4G 最大4G 最大4G 最大4G
2024/10/30(水) 02:07:11.28ID:p9nsrTZ/
evo tech ωωω
2024/10/30(水) 02:37:36.07ID:BzmMNap8
>>283,285
accessは他の追随を一切赦さぬDBMS覇権(性能、機能的な意味で)だろ
事実上普及してる全てのDBMSにコネクトできる万能クライアントだし
つまり表向きの売りであるGUIガン無視したとてしても最強
GUIでポチポチした履歴と生成されるクエリ突き合わせて解読をつづけれりゃあSQL資料すら見ずともSQL書きの中の上には成れる

惜しむらくはそれだけ優れててもMSに干されそうなとこか…
OfficeからAccess抜いて別売とか正気とは思えんよ、AccessがOfficeに同梱された時は狂喜乱舞してたなあ…

他のAccessフォロワRDBMS環境はOpen/Libre(とその派生)のBaseだけれども、正
直言って...α版の域すら出てないレベルでCLI叩いててSQL直打ちの方がマシ
289デフォルトの名無しさん
垢版 |
2024/10/30(水) 10:40:48.68ID:x/mNM3SS
DBのGUIでつまいこういうことをやりたい
(ただ表示する画像はもっと多い)

https://i.imgur.com/e5UznLk.png
2024/10/30(水) 19:37:59.35ID:MyBSxte7
>289
自分で作っちゃえばええやん
sqlでselectしてアプリケーション経由して(phpでもjavaでもTypeScriptでも何でもおけ)適当にhtmlブラウザで表示させればええやん
複雑なjoinとか無くて一つのテーブルで済むなら30分も掛からず出来るっしょ
291デフォルトの名無しさん
垢版 |
2024/10/30(水) 19:51:27.08ID:x/mNM3SS
>>290
結局最終的にはhtmlで出力しかないのか
DBのGUIでずらっと画像だしてくれるものだとおもってた
2024/10/30(水) 19:57:39.75ID:MyBSxte7
>291
マルチやめなさい。そしてhtml表示は一つの手段でしか無い。他にも方法なんぞ幾らでもあるわ。ただし、開発環境を一切書いてないから助言が出来るわけもなく
あくまで一般的な方法で手っ取り早いのを伝えただけ。
Excelのマクロ組んでもいいだろうし、cuiでコマンド叩いてDBからローカルの画像パス取ってきてホストPCに表示するバッチ組んでも良いだろうし…
「結局最終的にはhtmlで表示するしかない」なんて一言も書いてないぞ
繰り返すが「開発環境を一切書いてないから助言が出来るわけもなくあくまで一般的な方法で手っ取り早いのを伝えただけ。」だぞ
2024/10/30(水) 20:01:18.39ID:x/mNM3SS
>>292
そもそもphpでもjavaでもまたひと手間かよと思ったら泣きたくなってよー
とらいえずExcelでのデータベースはできたんだ
ただ数万の画像表示でクッソ重いからファイルパスに変えたけど
でも画像べらーって表示したいじゃん
これを試しに画像だけでもHTMLでやったらどうなるかと思ったら数万枚数十万のサムネ画像べらーっとはったら重いわ
そうなんだよな、htmlしばりするわけじゃねーもんな
とりあえず、EXCELでデータベース作って、SQliteにぶち込んでそれで様子みてる
そっから先は何でどうするか選択肢がおおすぎてわけわからなくなってんだわ
マツリポストは後生やからさぁ、いまのところかんべんしてつかーさい
2024/10/30(水) 20:04:46.88ID:2JaEjh5Z
マルチポストとかこんなところにそんなのが存在するのか?
2024/10/30(水) 20:07:31.52ID:x/mNM3SS
良く考えたら風俗嬢とかのサイトでも女の子すべてずらーっと見せるの無いよな
数十毎にくぎってページ1とか2にしてるわけだし
2024/10/30(水) 21:20:15.49ID:J5/QLmGD
ガイジ大暴れ
297デフォルトの名無しさん
垢版 |
2024/10/31(木) 13:02:50.98ID:POJr+rF8
馬鹿には無理
298デフォルトの名無しさん
垢版 |
2024/11/01(金) 00:10:42.00ID:EQMsSXTB
>>291
そんな付加をかけまくるツール、人間が少しだけ見るためのツールに需要はない。
2024/11/01(金) 09:10:10.59ID:xFfDlU+j
>>298
色々なサイトでサムネを1ページの中に限定して表示してるのは数を無限や数万数十万にすると負荷がかかるからか
なるほどなあ
2024/11/01(金) 19:58:15.69ID:p+e2Ja+9
つ<img loading="lazy">

てか結局何がしたいの?
explorer+特大アイコンで駄目な理由は?
2024/11/01(金) 19:58:32.10ID:TgBKHsuN
twitterのフォロワー整理ツールとか参考になるわ
2024/11/03(日) 17:55:14.49ID:sFUWrMLA
>>300
画像がDBに入っていると、エクスプローラーでは見れないんだよね
2024/11/03(日) 18:18:24.25ID:gYhGbZOp
>>302
それはそうだが、そもそも画像をDBに入れる意味がない
ただ初心者あるあるらしく、「(画像掲示板では)そうじゃなくてファイル名だけDBに入れてapacheに直接配信させるんだ」と
説明してたサイトがあったがすぐには出てこない

なおSQLiteはBLOBにもインデックス張れるらしいが、そんな使い方しないだろ
2024/11/03(日) 18:54:12.64ID:sFUWrMLA
>>303
上級者でもあるあるだけどね
デメリット大きいけどDBに入れたら入れたで便利なことも多いんだよね
もっと良かったこと探しをしろ
2024/11/03(日) 20:08:56.01ID:gYhGbZOp
ないと思うが、まあ上級者なら自分で何とかしろ
なお293なら画像をDBに入れてなければ解決してる
2024/11/03(日) 22:39:10.72ID:EvIOUlko
何も解決してないだろww
2024/11/04(月) 14:37:07.62ID:odwm0TPR
ずっとBAD GATEWAY
2024/11/04(月) 14:37:49.34ID:odwm0TPR
っつーのは書けるのか なんてこった

解決しなきゃいけない案件じゃねーだろ 画面いっぱいに数万もの大量な画像をずらーっと表示したいなんて要望は
そも、それをしてからその先どうしたいんだ? それを一向に書こうとしない相談者に難がある
表示したらそれで満足なんか?
ランダムに表示するようにでもしなきゃ、毎回その数万の画像のうち特定の一部だけを目撃することに成る それに意味は?
小アイコンサイズで画面いっぱいに貼ったとしてFHDモニタで250枚程度だ もっとちっさくした画像でも貼ろうってのか
いろんな画像が次々湧いてくるようなエフェクト掛けて、とかならDBだのSQLだのほぼほぼ関係ねーわ
2024/11/04(月) 14:52:26.31ID:1xi3Twsq
>>308
何も解決していないのに「なお293なら画像をDBに入れてなければ解決してる(キリッ)」みたいな痛いレスが面白かっただけだよ
310デフォルトの名無しさん
垢版 |
2024/11/06(水) 08:23:55.64ID:spMsN6R2
>>299
RDBでデータ型が画像データというデータ型は聞いたことがない。

RDBは画像データのバイナリデータか、画像データファイル形式に近いラージオブジェクト型。
単に画像データファイルへのリンクが入っているだけという設計もある。
2024/11/06(水) 08:54:43.24ID:L0rogwPJ
INNER JOINとEXISTSどっちがいいんだ?
2024/11/06(水) 10:46:12.80ID:2mRFCI0/
使い途がちがう EXISTSはture/falseを返すだけ
2024/11/06(水) 11:02:31.90ID:L0rogwPJ
INNER JOINでもWHERE EXISTSでも、テーブルBのデータを使ってテーブルAのデータを絞り込んでSELECTするができるじゃん
性能的にどっちがいいんだっていう
314デフォルトの名無しさん
垢版 |
2024/11/06(水) 12:00:06.03ID:spMsN6R2
>>313
そもそも実行計画・実行プランくらいは見ろよ
書き方がどうとかいい加減にしろ!
315デフォルトの名無しさん
垢版 |
2024/11/06(水) 12:02:25.42ID:spMsN6R2
>>313
対象レコードの存在有無を判定するのに内部結合をするのは意図がわからないのでやめなさい。

しかも処理コストが高くなるのが普通だ。
316313
垢版 |
2024/11/07(木) 08:53:30.88ID:Qi1p5GFP
>>314-315
はい、ごめんなさい……
317デフォルトの名無しさん
垢版 |
2024/11/12(火) 08:43:58.73ID:ZCUDlG+O
PostgreSQL 17 を使ってるんですが

SELECT shohin_bunrui AS aaa
FROM shohin
where aaa = '衣服';

↑実行順序を考えると当然エラーになります。
エラー: 列"aaa"は存在しません

SELECT shohin_bunrui AS aaa
FROM shohin
GROUP BY aaa;

↑エラーになりません。SELECTよりGROUP BYの方が実行順が先なのになぜですか?
2024/11/12(火) 09:07:16.39ID:+Q7wUFQ5
抽出条件で行の絞り込みをするのは、SELECTでなく WHEREかと
行を絞ってからグループ化するのはそうかもしれないけど、
統一感はあった方がいいとは思いますね
2024/11/12(火) 11:00:57.73ID:jB7P5Kru
>>317
GROUP BYでもcolumn aliasが使えるようPostgresが拡張してるから
集約関数とかを両方に書かないといけないの面倒でしょ?
320317
垢版 |
2024/11/12(火) 12:30:43.18ID:ZCUDlG+O
>> 319
Postgresさんが気を利かせてくれてるわけですね?
ありがとうございます。
321317
垢版 |
2024/11/12(火) 12:30:43.35ID:ZCUDlG+O
>> 319
Postgresさんが気を利かせてくれてるわけですね?
ありがとうございます。
322317
垢版 |
2024/11/12(火) 12:30:44.59ID:ZCUDlG+O
>> 319
Postgresさんが気を利かせてくれてるわけですね?
ありがとうございます。
323デフォルトの名無しさん
垢版 |
2024/11/12(火) 12:31:48.29ID:ZCUDlG+O
すみません。ブラウザの反応がなかったので何回も書込み押してしまいました
2024/11/12(火) 15:44:40.37ID:3FuqnzdR
view造って先にaaaのみにするんじゃね
2024/11/12(火) 16:45:36.43ID:+Q7wUFQ5
WHEREによるフィルタが先で、SELECTによるマップがあとなのかな
326デフォルトの名無しさん
垢版 |
2024/11/12(火) 17:29:22.04ID:v7TGFNyn
>>322
そんなに列別名を使いたい理由がわからない。

集合演算のSELECTでテーブルによって列名が異なるならやらないといけないが、そういうSELECTでないのにテーブル別名メリットが大きいが、列別名を使うメリットなんてほとんどないよ。
327デフォルトの名無しさん
垢版 |
2024/11/12(火) 17:31:02.65ID:v7TGFNyn
>>325
SQLの構文解析エンジンの仕様によるような書き方をするのがそもそもの間違いだよね。
2024/11/12(火) 18:00:22.86ID:+Q7wUFQ5
>>327
ですね
2024/11/12(火) 18:13:14.69ID:+Q7wUFQ5
LINQを最初に見たとき、なんでこんな順序なんだ? と思ったけど、自然な順序なのかもね
FROM→WHERE→SELECT

しばらくLINQやってないから、うろ覚えで見当違いだったらごめんなさい
330デフォルトの名無しさん
垢版 |
2024/11/12(火) 19:58:46.82ID:v7TGFNyn
>>329
SQLは自然言語に近い表現で作られた
英語の語順になっているから、日本人には変な順番に見えるだけ
2024/12/20(金) 16:41:43.73ID:cA4MHukG
テーブルごと全てのカラムにまとめて別名付けるとかできないのかな
以下のような場合に別名付けるとき
テーブルA
id
name
description

テーブルB
id
name
description

select
A.id as A_id,
A.name as A_name,
A.description as A_description,
B.id as B_id,
B.name as B_name,
B.description as B_description
from
みたいに書かないといけないのを
A.* as A_*
みたいに書けたら便利なのに
2024/12/21(土) 11:36:41.92ID:KZIgeCwE
うちはそのまま A.name のまま扱ってるよ
333デフォルトの名無しさん
垢版 |
2024/12/21(土) 19:55:23.41ID:IOryZJAZ
>>331
またそのネタかよw
334デフォルトの名無しさん
垢版 |
2024/12/21(土) 20:43:39.23ID:SDOaO/8s
SQLを出力するプログラム位かけるやろ
335313
垢版 |
2024/12/23(月) 08:20:37.09ID:hrYrd+aN
>>330
クエリ式であってSQLじゃねぇだろ
SQLの語順ならSELECTが最初だ
2024/12/23(月) 10:17:08.30ID:xh1kOIEb
>>333
また、って言うくらいには結構求められている機能だと思う
2024/12/23(月) 18:35:45.31ID:GjEN+y4a
>>329
LINQはそもそも.NETのコードの物だから
メソッドチェーンで書く時の順番がそのままになってるだけよ

HogeList.Where().Select()って書き方になるからクエリ式もそうなる。
2024/12/24(火) 09:46:38.33ID:MemH7BuO
>>331
すべてのカラムに最初からそういう名前をつけているよ
テーブルA
A_id
A_name
A_description

テーブルB
B_id
B_name
B_description

select
A_id,
A_name,
A_description,
B_id,
B_name,
B_description
from
とシンプルに書けて良いよ
2024/12/24(火) 12:30:30.62ID:V4/fVU02
>338
>331を読むに、別名(エイリアス)でテーブル名付けたいって事でしょ
確かに長ったらしいテーブル名は一括で一文字のエイリアス名を付けたいな…の思う事もあるから>338の言わんとしてることも分かる
340デフォルトの名無しさん
垢版 |
2024/12/24(火) 22:39:03.73ID:S4CkJ4V1
>>335
標示SQLではSELECTよりもWITHが先
341デフォルトの名無しさん
垢版 |
2024/12/24(火) 22:40:09.34ID:S4CkJ4V1
>>338
同じカラム名なのに意味が異なるという狂った設計なのが間違い
2024/12/25(水) 01:30:11.46ID:YXgPFPfq
SQLというよりSQL clientの機能の話じゃね?

SELECT a.id, a.name, b.id, b.name FROM foo a INNER JOIN bar b ON …
↑みたいなクエリを書いた時に結果のカラム名が単にid, name, id, nameと表示されるのではなくa.id, a.name, b.id, b.nameと表示されればいいわけでしょ?

プログラムから結果セットにアクセスする時は”a.id”や”b.id”でアクセスするんだから表示調整くらい簡単にできそうだけどな
2024/12/25(水) 08:15:20.48ID:63Wcp4qk
誰もWITHの話なんかしとらんのに突然の主張w
344デフォルトの名無しさん
垢版 |
2024/12/25(水) 12:26:11.92ID:wfmvBy7R
日本語SQLスズラン
345デフォルトの名無しさん
垢版 |
2024/12/25(水) 15:26:23.80ID:PDJSnv/I
be with you
346デフォルトの名無しさん
垢版 |
2024/12/25(水) 17:53:18.64ID:YmcCoB80
>>343
SELECT句よりも先にWITH句を書くので、SELECT句が先ではない。
347デフォルトの名無しさん
垢版 |
2024/12/25(水) 17:56:53.42ID:YmcCoB80
>>342
根本的に同じカラム名なのに別のカラムという設計がおかしい

どちらかのテーブルにしかないカラムなら、修飾そのものがいらない

それはあんたはSQLの話ではなくて、別の製品の仕様の話をしている

それに同じ名前のカラム名なら別名を定義するべきだ
348デフォルトの名無しさん
垢版 |
2024/12/25(水) 17:58:44.64ID:YmcCoB80
 
SQLを適当に書く人間が増えて、めちゃくちゃなシステムだらけになった。

同じカラムが、同じカラムがというなら、結合したビューでも用意しとけよw
2024/12/25(水) 18:33:32.24ID:WXVFxdaX
元の話も読めないようなヤツはWITHがどうのと主張しとらんと黙っといた方がいいよw
2024/12/25(水) 18:36:08.08ID:63Wcp4qk
>>346
誰もWITHの話なんかしとらんのに突然の主張w
351デフォルトの名無しさん
垢版 |
2024/12/25(水) 19:42:44.67ID:r1WXKMXg
>>350
335 313 sage 2024/12/23(月) 08:20:37.09 ID:hrYrd+aN
>>330
クエリ式であってSQLじゃねぇだろ
SQLの語順ならSELECTが最初だ
352デフォルトの名無しさん
垢版 |
2024/12/25(水) 19:44:16.65ID:r1WXKMXg
>>349
SQLの構文仕様を調べたことがあるのか?

SQLそのものは自然言語の英語の語順になっているだけ
353デフォルトの名無しさん
垢版 |
2024/12/25(水) 19:47:55.88ID:r1WXKMXg
「クエリ式」はSQLの世界の話ではなく、SQLを組み立てる側のライブラリの世界の話。

使われる方が使う方を意識するという発想で設計書を書かせようとする人間がいるが、それだと延々とドキュメントを修正することになる。

世界中の人間に聞いて回ってドキュメントを修正するなど無理だし、無意味。
2024/12/25(水) 21:03:35.85ID:WXVFxdaX
ダメだわこの頭でっかちw
2024/12/26(木) 13:44:41.34ID:KwPCWpVD
>>341
うれしい副産物として、違うカラム名にできるというメリットもある
356デフォルトの名無しさん
垢版 |
2024/12/30(月) 02:42:59.39ID:SuC1UiOz
>>354
SQLを書きたくないという理由を聞きたい
他人にぶん投げられれば気が済むのか?
357デフォルトの名無しさん
垢版 |
2024/12/30(月) 02:44:55.46ID:SuC1UiOz
なぜ「データベース」板を無視して「プログラム」板に書いているのも謎
358デフォルトの名無しさん
垢版 |
2024/12/30(月) 14:22:49.66ID:y1s4zo7f
SQLなんて一回描いたら何度も描き治すもんでもないからな
面倒臭がるのは怠慢
2024/12/30(月) 19:29:38.65ID:V3PHz5v0
>>358
なおすでーー
2025/01/01(水) 21:42:25.49ID:sxxQrAOo
>>359
そう何度も直すことは無いよ
2025/01/01(水) 23:12:26.15ID:21eIb2Fa
へぼかったら治すでーー
362デフォルトの名無しさん
垢版 |
2025/01/05(日) 10:38:54.01ID:c9RkuEF2
単にテキストエディタの機能を使いこなせずに毎度、すべてキー入力している初心者は案外、多い。
363デフォルトの名無しさん
垢版 |
2025/01/05(日) 10:48:34.28ID:8kdOFrcZ
ORMなんていらん
2025/01/05(日) 19:51:54.27ID:ToFXQ1cV
サブクエリ難しい
2025/01/05(日) 19:52:23.20ID:ToFXQ1cV
息をするようにSQLを書きたい
2025/01/05(日) 20:49:47.84ID:ktpqqLIO
>>364
当該処理がクエリを2回以上発行することを許されてる仕様や環境なら、無理にサブクエリ1発で処理しようとせず2回以上に分けて処理するのも手だよ
サブクエリって見づらいしメンテナンスしづらいし
2025/01/05(日) 22:36:32.88ID:Gf5gTRAY
CTEのおかげてサブクエリの出番はめっきり少なくなったよね
2025/01/06(月) 12:33:31.51ID:HkxXvSmh
>>367
CTEってなに?
2025/01/06(月) 18:37:10.53ID:xyyiC8Hr
>>366

ありがとう
やってみる
逆にそれでサブクエリの感覚が掴めるかもしれないと勝手な期待をしている
accessとExcelVBAでやっているけど、IT素人のPC好きなおじさんがやる
やってるから何分感覚がつかめない
ミックさんのデータベース入門は読んでいるけど読み切れていない
2025/01/06(月) 20:05:07.43ID:PWtKQBnB
>>369
そうそう、その視点や観点が本当に大事
プログラム全般そうだけど一気に書こうとするとスパゲティ化して自分でも訳わからなくなるから
必ず最小から始めて、それらをくっ付けて大きくしていくみたいな感覚が大事
2025/01/09(木) 00:01:55.02ID:8WDo/TAk
サブクエリは普通に使うだろ
2025/01/11(土) 10:22:19.58ID:ouBpeDRU
サブクエリを使うクエリを分解したらたいていN+1になるしな
2025/01/19(日) 01:50:01.24ID:IALgBqxE
サブクエリ使う理由ってめんどくさがったり一時領域をケチる以外に理由ないよ
サブクエリを使わずに結果を出すようにした方がメンテもパフォーマンスも上がる
2025/01/19(日) 02:17:21.82ID:9/Z57kyd
サブクエリの有無ごときで議論になるの笑ってしまうなw
どんなちっこいアプリなんだ?電卓とか?
2025/01/19(日) 06:33:56.88ID:ugzsMDEi
1週間も経って突然貶し始める方が笑ってしまうわ
376デフォルトの名無しさん
垢版 |
2025/01/19(日) 09:51:50.41ID:pfUoPKo5
どこの句のどういう使い方をするサブクエリなのか書いてくれないと、サブクエリを使うべきなのか、そうでないか答えようがない。
2025/01/19(日) 13:34:54.51ID:bMoMF2/G
SQLを複数回に分割して発行すると、その間DBに更新がないことを担保する必要がありますか?
2025/01/19(日) 16:06:56.18ID:vo12PcwL
トランザクションを指定すれば?
2025/01/19(日) 16:20:11.02ID:MoFiVYUu
そこはSQLを複数回に分割して発行するかどうかよりも上位のレベルで
トランザクションや同時実行制御の観点から設計しておくべき事項
担保する必要性の有無は分割しようがしまいが変わらない
2025/01/19(日) 18:28:02.90ID:T6GaQrgY
やはりトランザクションですね
ありがとうございます!!
2025/01/19(日) 18:29:15.30ID:T6GaQrgY
ちなみに、サブクエリとするか分割するかのレスに乗っかって、でした
2025/01/20(月) 11:39:20.74ID:7SyPOdKK
サブクエリを使わないで、一旦チンポテーブルに書き出す方式があったよね
あれなんだっけか
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況