レコードに位置の概念があったり、位置の概念がないと思いながらもソートがいきなりできると思い込むITオンチと話すときりがない。 0633NAME IS NULL2017/10/11(水) 17:28:00.59ID:??? 誰でも知ってることをドヤ顔で永遠と書いた挙句に最後は八つ当たりww 0634NAME IS NULL2017/10/11(水) 17:29:56.92ID:f/rcAUbh>>631 それは構文がそう見えるだけだろうが。
rownumの値は副問い合わせの結果で、かつrownumは主問い合わせの取得順。
Oracleの構文になんでそんなに文句があるのか。
外国人はデタラメが多いから気をつけろよ。 0635NAME IS NULL2017/10/11(水) 17:31:15.35ID:f/rcAUbh>>633 どうもスルー力がないようですね。 0636NAME IS NULL2017/10/11(水) 17:33:11.25ID:??? 構文にじゃなくてお前に文句があるだけでは 0637NAME IS NULL2017/10/11(水) 17:36:44.50ID:f/rcAUbh 実際にこの話題は仕事でも若い人ほど、標準SQLが先にあって、OracleがそのSQLの仕様に沿って作られていると勘違いしているのか、引っかかって面倒なんだよな。
最近もSQLはこう書くとこうなるみたいな話をデータベースに詳しくない人間が言い始めると、面倒だからそれに従うしかない。 0638NAME IS NULL2017/10/11(水) 17:38:22.42ID:f/rcAUbh 批判されていると思い込む恐怖心はわかるが、ネットとはこういうところです。 0639NAME IS NULL2017/10/11(水) 17:47:01.74ID:??? 批判されてるのもお前では 0640NAME IS NULL2017/10/11(水) 18:02:51.58ID:??? >rownumは主問い合わせの取得順 これは間違いないんだが、その肝心の主問い合わせの取得順が 副問い合わせのORDER BY順にならなければトップn取れないわけだが (最終的な出力順はその通りとは限らんでも良いけど)
これがORACLEでは保障されてるってなら マニュアルのどこに書いてあるか言えばいいだけなんだがな
ORACLEには仕様ではないが過去の実装からそうだと決めつけられてることが結構あって ORACLE自身も影響範囲がでかすぎて、おいそれと変更ができなくなってる これもその一つだと思うけどね 0641NAME IS NULL2017/10/11(水) 18:12:59.37ID:??? やりとり見てないまま横から失礼だが 普通は row_number() over 〜 使うんじゃないの 0642NAME IS NULL2017/10/11(水) 18:18:20.51ID:???>>640 top-N集合の取得は保証されてるよ それはリファレンスのrownumのところ読めばわかるじゃん 0643NAME IS NULL2017/10/11(水) 18:48:25.70ID:???>>641 そうね 今はfetch first/next使う 0644NAME IS NULL2017/10/11(水) 19:56:15.09ID:??? どうでも良いからOracleのスレでやれって アフォどもが 0645NAME IS NULL2017/10/11(水) 21:34:43.34ID:f/rcAUbh ソート条件のあるカーソルでフェッチ順がソート条件通りにならないという主張はただの知識不足としか思えない。 0646NAME IS NULL2017/10/11(水) 21:40:14.45ID:f/rcAUbh>>640 なんでオラクル社の説明をねじ曲げて解釈するのか?
例のrownumの件は、ドキュメントでも主問い合わせのrownumは、副問い合わせの結果が値で、主問い合わせの疑似列であると説明している。 0647NAME IS NULL2017/10/11(水) 21:40:16.53ID:9hHhkBSp>>645 もうやめたら?言えば言うだけバカがよけいにムキになるだけだぞw 0648NAME IS NULL2017/10/11(水) 21:42:53.00ID:f/rcAUbh>>647 SQLは仕事上、間違いを主張しまくる人間が多いから、ここでもとにかく誤りを正さないと生活がめちゃめちゃになる。 0649NAME IS NULL2017/10/11(水) 21:51:37.74ID:???>>646
>>623でオラクルのエンジニアが並び順は保証されてないとハッキリ言ってるじゃん 彼が間違ってて君が正しいと言える客観的根拠が全く提示されないから説得力ゼロ 今のところ”ソースは俺の頭の中(キリッ”な状態 0650NAME IS NULL2017/10/11(水) 21:53:42.91ID:???>>645 君以外誰一人としてカーソルのフェッチについての話なんてしてないよ 0651NAME IS NULL2017/10/11(水) 22:03:53.96ID:9hHhkBSp ああなるほど、いかにもバカらしい勘違いだなw 0652NAME IS NULL2017/10/11(水) 22:21:29.26ID:??? 典型的な老害 0653NAME IS NULL2017/10/11(水) 22:25:26.59ID:f/rcAUbh>>650 SQLが何なのかわかってない。いい加減にしろ。 0654NAME IS NULL2017/10/11(水) 22:27:41.07ID:f/rcAUbh>>649 その人が間違ってるのに、なぜオラクルエンジニアの私が間違ってると決めつけられなきゃいけないのか? 0655NAME IS NULL2017/10/11(水) 22:31:39.23ID:???>>646 主問い合わせのrownumは主問い合わせのフェッチ順のはずで >副問い合わせの結果が値 なのは、「主問い合わせのフェッチ順が副問い合わせのorder by順」な結果に過ぎないんじゃね で、今問題なのは 「主問い合わせのフェッチ順が副問い合わせのorder by順」 なのは実装なのか仕様なのかって話なんだが (主問い合わせの出力順が主問い合わせのフェッチ順通りかどうかは別の問題)
ま、どっちにしても個別DBMSの話だから続きはオラクルスレでやってくれればいいけど 0656NAME IS NULL2017/10/11(水) 22:37:12.18ID:f/rcAUbh 不思議なのは、Oracleがインラインビューにorder byの仕様をあとから追加して並び順を付けたのに、なぜ並び順が不定と言い張っているのか?