kstr-tsidunokoyofsyo
96 :
NAME IS NULL:2006/03/17(金) 12:05:57 ID:NzFO+vao
97 :
NAME IS NULL:2006/04/03(月) 16:03:56 ID:E79P7eVa
98 :
"":2006/04/25(火) 20:16:11 ID:3eqCav1R
left joinの使い方教えてください。お願いします。
SQLの厳密な文法を構文図かBNFで記載したサイトか書籍はないでしょうか?
よろしくお願いします
規格票にあると思うよ。高いけど。
それぞれのDBのマニュアルについているよ^^
AccsessでもADOならワイルドカードはやっぱり%
とか、いつのレスに対してだか誰のレスに対してだか分からない
どうでもいいようなことを書いてみる
あの、一行だけの表(ORACLEのDUALとかDB2のsysdummy1)を
指定の行数出力することは可能ですか?
もちろん
select * from dual
union all
select * from dual
で繋げていけば指定の行数出力可能だとは思うんですが・・・
この方法以外で1ステートメントで・・変数として行数を指定したいんです。
10を入れれば下記のような出力となるSQLです。
DUMMY
--------
X
X
X
X
X
X
X
X
X
X
SQLだけでは無理ですかね・・・
ストアド書きなはれ
select 'X' from all_objects where rownum<=&1;
107 :
NAME IS NULL:2007/03/20(火) 07:23:07 ID:fNM6Qnn+
sqlで検索条件を書くときに、絞り込み量が大きい順にすると検索結果が速くなるときいたのですが本当ですか?
SQLのコーディングスタイル(大文字/小文字とか改行とかインデントとか)
って何かいいのないかな?
例えば下のようなSQLだったらおまいらどう書きますか?
(俺は予約語小文字派。)
select C.DATA, C.COL, sum(C.COL2) / count(*)
from (select *
from (select * from TABLEA) as A
cross join
(select DATA as DATA2, COL as COL2 from TABLEA) as B
order by A.DATA desc, B.DATA2 DESC) as C
where C.DATA >= C.DATA2
and C.DATA2 > C.DATA - 5
group by C.DATA, C.COL
order by C.DATA desc
;
漏れだったらこう書くな。
select C.DATA
, C.COL
, sum(C.COL2) / count(*)
from (
select *
from (
select * from TABLEA
) as A
cross join
(
select DATA as DATA2, COL as COL2 from TABLEA
) as B
order by A.DATA desc, B.DATA2 DESC
) as C
where C.DATA >= C.DATA2
and C.DATA2 > C.DATA - 5
group by
C.DATA
, C.COL
order by
C.DATA desc
;
大文字小文字は拘らない。
予約語は大文字派
112 :
◆O7Fiuvx.6o :2008/04/01(火) 13:09:53 ID:ufIqo/xg
テスト
全部小文字派だったんだが、
SQL Server でデータの大文字小文字を区別しないとかいう設定があったらしく、
区別するようにしたら、列名まで大文字小文字を区別するようになって、
小文字ではデータにアクセスできなくなった。
それ以来、全部大文字。
SQL Server にはあまりなれてない DBA なので、何かの勘違いじゃないかと思うんだが、
そんなことはないか?
まあアンダースコア使わないのはありえないな
115 :
NAME IS NULL:2008/05/05(月) 10:56:26 ID:5HiaOU4r
カンマ行頭派 vs 行末派を開催しましょう
>>113 そういう設定あるよ。Collationのことだろう。サーバーにデフォルトが設定されているが、
create database やカラムで指定することもできるし、where で文字列比較時に指定することもできる。
大文字小文字の識別有無だけでなく、全角と半角、ひらがなとカタカナ、仮名の濁音と半濁音に
ついても、識別するかそれとも同じ文字と見なすか、という指定ができる。
アンスコ派だったけアンスコを単語区切りに使うのもったいないからキャメル派に転向しました
119 :
NAME IS NULL:2008/10/26(日) 18:13:57 ID:0SMHVjon
【質問】
みなさん、SQLエディタ?ってなにを使われてますか?
ぼくは、CSEを使っています。
ただ、少々ふるいので、新しいエディタを使いたいと考えてます。
お勧めのエディタがあれば教えてください。
因に、
OS;WinXP
DBMS;oracle 10g
です。
よろしくお願いします。
CSEで困ったのがUTF-8を正しく認識してくれないこと。
S-JISで設計されてるのかな?
黒猫 SQL Studio
121 :
NAME IS NULL:2008/10/26(日) 20:20:57 ID:0SMHVjon
>>120 黒猫は使ったことないので、使ってみます。
世界的に有名なエディタってご存知ですか?
検索しても見つからないので・・・
世界的にとか言ったら、emacsのsql-modeぐらいしかないのでは。
全然新しくないけど。
A5:SQL Mk-2 … 世界的じゃなさそうだが、フリーの中では最強と思う。
sage
127 :
NAME IS NULL:2009/11/15(日) 12:43:10 ID:NGi10r9r
ひさびさに業務系のカスタマイズ案件をやってるんだが、
やっぱウォーターフォールだとSQL文が複雑になる傾向が
あるなぁ。
SEが自らの存在価値を出そうと、なんでもSQLでやろうと
するからだと思うんだが、複雑なSQLはデバッグと
メンテが大変だから、勘弁して欲しい。
なんでも手続き型で、というのも問題があるけどな。
男は黙ってスラムダンク
左手を添えてるだけじゃん
table1
id 名前 状態_id
------------------
1 キムラ A
2 田中 B
talbe2
id 状態_id 状態(varchar)
------------------
1 A 0
2 A 0
3 A 1
4 B 0
5 B 0
結果
名前 状態
------------------
キムラ 1
田中 0
になるようなSQL文でどう書きまっか?ちなみにORACLE9i。
132 :
131:2010/01/13(水) 11:40:58 ID:???
GROUP BYで自己解決しますた。
134 :
NAME IS NULL:2010/10/12(火) 15:25:25 ID:vxRffEeS
10年ほど前、N*CのSQLコーディング規約
SELECT命令のところ
FROM句には複数のテーブルを記述してはならない、
とあって笑った。
なんで?
べつに面白くないが
「底辺グラマが結合をつかうのはまかりならん。必要なときはSEか上級グラマが
VIEWを作ってやるからそれを使え。」ってやつかな。
たぶんそれは底辺向けの規約なんだよ。
138 :
NAME IS NULL:2010/10/19(火) 13:49:18 ID:dBdSbcBS
>>137 不二通でも、同じような規約があった。
200人以上開発メンバーがいるプロジェクトのSQLに自称いちばんくわしい
というF社社員がFROM句に1つ以上のテーブルを書くとエラーになると
思っていた。木亥火暴
MySQL 5.1.45
作者テーブル author_tbl
id int(5) ← PK auto_increment
author_name varchar(30) ← unique index
作者別名変換テーブル author_changetbl
change_id int(5) ← PK auto_increment
betumei varchar(30) ← unique index
moto_id int(5)
author_tbl
id name
1 xxxxx
2 dddddd
3 rrrrrr
4 ssssss
6 nnnnnnn
author_changetbl
change_id betumei moto_id
1 fffffff ?????
2 rrrrrrr ?????
author_changetblのchange_id 1 は author_tblのid 3の別名、
author_changetblのchange_id 2 は author_tblのid 1の別名として
作者テーブルと作者別名変換テーブル(改名等で名前を変更)の2つがあります
moto_idの値は事前に必ずauthor_tblのauthor_idに登録されています。
作者別名変換テーブルにデータを登録する際に、moto_idを元の
author_tblから拾って登録するようにしたいのですが、insertにそういう事って
出来ますか?
fffffffとそれに対応するrrrrrrは事前に判ってはいるのですが
SQLよく知らん
∧,,,∧
( ・∀・) ほー それで
( : )
し─J
ここで質問するのがあっているかどうかわからんのですが、
トランザクションって、複数のConnectionに対してかけることはできないのでしょうか?
MySQLで。
ある1つのConnectionでSQLを実行してConnectionを閉じた後、
別に新しいコネクションを開いて実行したSQLまでをトランザクションの範囲とする
ことは不可能でしょうか?
143 :
NAME IS NULL:2014/07/30(水) 08:52:27.89 ID:+2NTFeTZ
★2ch勢いランキングサイトリスト★
◎ +ニュース
・ 2NN
・ 2chTimes
◎ +ニュース新着
・ 2NN新着
・ Headline BBY
◎ +ニュース他
・ Desktop2ch
・ 記者別一覧
◎ 全板
・ 全板縦断勢いランキング
・ スレッドランキング総合ランキング
◎ 実況込み
・ 2勢
・ READ2CH
・ i-ikioi
※ 要サイト名検索
>>142 コネクション閉じたら、そのあとコミットしたかロールバックしたか判断できんぞ