X



SQLについて語るスレ
0001名無しさん@お腹いっぱい。
垢版 |
03/06/30 11:07ID:VGDYPcbU
どうぞ    
0015おおむら ◆PoX7Lacoik
垢版 |
03/07/01 07:29ID:???
Insert Into Goku Values ('Genki');
Select OraniTikarawo From Goku Where Waza = 'Kaiou';
-----------------------------------------------------
Genkidama
0017名無しさん@お腹いっぱい。
垢版 |
03/07/02 03:36ID:???
>>4
それ、どこのコピペか知らないけど、違うような。

> C言語や perl の様に構造化されたロジックを組みながら、

全く別物だと思う。
C や Perl は手続き型言語。書いた順に実行される。
SQL は非手続き型言語。一つの命令文が複数の手続きに展開され、実行される。
よって、どのように展開されるか(Oracleなら、どのような実行計画が作成されるか)
考慮しながら書く必要がある。
0018名無しさん@お腹いっぱい。
垢版 |
03/07/02 03:39ID:7ARcHJ3A
age
0022名無しさん@お腹いっぱい。
垢版 |
03/07/02 08:05ID:FOLZjtLH
>19
二本筋だったら怖えよ





















と業者にマジレス
0023名無しさん@お腹いっぱい。
垢版 |
03/07/02 10:09ID:???
本当にデータベース板だったのかよ。需要ないでしょうに。
SQLは小文字派。
select * from UriageDat where BumonCD = 10 order by Hizuke, UriageNo
0024名無しさん@お腹いっぱい。
垢版 |
03/07/02 10:18ID:42+kqt87
drop database >>1;
^D
make reinstall
rm -fr >>1
0030名無しさん@お腹いっぱい。
垢版 |
03/07/02 14:24ID:dwopzrCx
(1) FROM 甲, 乙 WHERE 甲.コード = 乙.コード
(2) FROM 甲 LEFT JOIN 乙 ON 甲.コード = 乙.コード
(3) FROM 甲,乙,丙

(1)のようにテーブルが二つの場合は、(2)のように書けますが、
(3)のようにテーブルが三つの場合はLEFT JOINではどのように
かけばよいのでしょうか?
0039名無しさん@お腹いっぱい。
垢版 |
03/07/04 19:55ID:aBCtkKEB
>>13
今の業務アプリでRDB使わない開発なんて滅多にないから
将来PG目指すなら、それくらい覚えておいて損はない。
0040おおむら ◆PoX7Lacoik
垢版 |
03/07/05 06:32ID:???
SQLもかけないようなPGなんて要らないってのが
正直なところではないかと?
0042ぼるじょあ ◆ySd1dMH5Gk
垢版 |
03/08/02 05:10ID:???
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ
0045名無しさん@お腹いっぱい。
垢版 |
03/08/10 07:52ID:NAKv7sy5
SQLについて語るスレ.EmptyTable
0047213
垢版 |
03/08/12 17:04ID:???
>>46
;が抜けてる。
0049PostgreSQL
垢版 |
03/08/12 17:19ID:???
>>46
ERROR: parser: parse error at or near "[" at character 13
0055山崎 渉
垢版 |
03/08/15 22:01ID:???
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0056山崎 渉
垢版 |
03/08/15 22:47ID:???
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0059名無しさん@お腹いっぱい。
垢版 |
03/09/16 22:43ID:2Hyf/e7I
>>58
この辺は使えませんか?
жёДЖф
0062NAME IS NULL
垢版 |
04/05/05 19:23ID:/b6SEtO9
話豚切りすまそ

SQLって…もとはIBM?
ポスグレなんかはもとはクエイルだかシークエルだかだったんだよな。

名前に構造化とか付いてる割りには微妙に文法に統一感が
なくて好きじゃない。insertはカッコで変数と値を別にくくるのに
updateはイコール使うとか。
いつのまにか共通語になったのでみんな仕方なくつかってるんじゃ
ないのか?

新しい問い合わせ言語が広まることを望む。
主眼は文法解析ルーチンが簡単になり、かつ人間にもわかりやすいこと。
といいつつSQL以外なんも知らんけどさ
0063NAME IS NULL
垢版 |
04/08/12 10:59ID:cX4fv/f0
はやく SQL が COBOL 化しますように
0065NAME IS NULL
垢版 |
04/08/30 01:56ID:???
>63

それだけは勘弁していただけませんか?
0066NAME IS NULL
垢版 |
2005/07/28(木) 00:00:28ID:???
/*
    2ch投稿用に C/C++ソースのスペースとタブを   に変換する
    入力:標準入力 出力:標準出力
*/
#include <stdio.h>

#define TABSP 4 /* タブ間隔をここで設定する */

int main ( int argc, char *argv[] )
{
    int c, col = 0;

    if ( argc > 1 )
        fprintf ( stderr, "usage: src2nbsp < INPUT-FILE > OUTPUT-FILE\n" );
    else
        while ( (c = getchar()) != EOF )
        {
            switch ( c )
            {
                case ' ' :
                    puts ( " " ); ++col; break;
                case '\t' :
                    do puts ( " " ); while ( ++col % TABSP ); break;
                case '\n' :
                    putchar ( c ); col = 0; break;
                case '\r' : /* 無視 */
                    break;
                default :
                    putchar ( c ); ++col; break;
            }
    }

    return 0;
}
0067retry
垢版 |
2005/07/28(木) 00:04:35ID:???
/*
    src2nbsp.c - 2ch投稿用に C/C++ソースのスペースとタブを &nbsp; に変換する
    入力:標準入力 出力:標準出力
*/
#include <stdio.h>

#define TABSP 4 /* タブ間隔をここで設定する */

int main ( int argc, char *argv[] )
{
    int c, col = 0;

    if ( argc > 1 )
        fprintf ( stderr, "usage: src2nbsp < INPUT-FILE > OUTPUT-FILE\n" );
    else
        while ( (c = getchar()) != EOF )
        {
            switch ( c )
            {
                case ' ' :
                    printf ( "&nbsp;" ); ++col; break;
                case '\t' :
                    do printf ( "&nbsp;" ); while ( ++col % TABSP ); break;
                case '\n' :
                    putchar ( c ); col = 0; break;
                case '\r' : /* 無視 */
                    break;
                default :
                    putchar ( c ); ++col; break;
            }
    }

    return 0;
}
0068名無しさん@そうだ選挙に行こう
垢版 |
2005/09/11(日) 16:40:28ID:xc9ohWdm
SQL文で、ナンバー型の項目に値を参照する時は
例えば
AAAA=1
のように構文としてはシングルコーテーション無しの書き方が一般的ですが
AAAA='1'
のようにシングルコーテーション有りの書き方でもエラーにはなりませんが
この書きかたって保障されているんでしょうか?

実は私の納品したソースが全てナンバー型にもシングルコーテーション無しになってしまって
いるんですが何か問題ありますか?
ぶっちゃけ、めんどくさいので特に問題が無ければそのままにしておきたいのですが。
0069名無しさん@そうだ選挙に行こう
垢版 |
2005/09/11(日) 19:23:42ID:???
>68
製品によって異なると思われます。

oracleであれば勝手に直してくれたような・・・。
ただし、パフォーマンスに悪影響を及ぼす可能性は否定できません。

書式のミスなら単体テストではじけますが
パフォーマンスの影響は下手すると稼動してからでないと発覚しないんで
直すリスクと放置するリスクを比較すると私ならリーダーに直す方向で相談します。

というかこういうときこそ相談しましょう。
いざというときの責任逃れのために(^^;
0070名無しさん@そうだ選挙に行こう
垢版 |
2005/09/11(日) 21:49:53ID:zG/dBAzZ
>>69
単体テストでは問題ありませんでした。

ソフトのバージョンとかによって直してくれなかったり
とか直してくれるとかそんなのがあったら怖いんですよ。
どうしよ俺。
0072NAME IS NULL
垢版 |
2005/09/12(月) 12:38:35ID:AJMa3i/a
0073NAME IS NULL
垢版 |
2005/09/12(月) 15:43:02ID:fgh/N+NC
すいません、情報処理の勉強してるのですが、SQLのINとEXISTSって
何が違うのですか?
0074NAME IS NULL
垢版 |
2005/09/12(月) 18:29:56ID:???
初めまして。
Paradox使用でのSQLについての初歩的な質問です。

他サイトでの説明が理解できないぐらいのレベルなのですが
どうか御教授よろしくお願いいたします。

select A.管理番号,A.設置年度,B.布設年度
from A,B,C
where (B.作業番号 = C.作業番号 and B.手順番号 = C.起点番号)
and (A.作業番号 = C.作業番号 and A.起点番号 = C管路.起点番号)
and (B.布設年度 like '%S%')


B.布設年度は「S58、H08」などで書かれています。
A.設置年度は「1999」などの西暦で入力されています。

B.布設年度を西暦に変換し、尚且つA.設置年度と合っているかどうかを調べたいのです。

以下の文はAccessでのSQLの文です。

and (substring (B.布設年度,2,1) <> '0')
and ((A.設置年度)<>(substring(B.布設年度,2)+1925))

上記2行のAccessの文はそのままParadoxに持っていく事が出来ません。

どのように変更したらよいでしょうか?

皆様よろしくお願いいたします!
0075NAME IS NULL
垢版 |
2005/09/14(水) 16:23:08ID:KsTuXUq/
007669
垢版 |
2005/09/14(水) 23:54:44ID:???
>70
古いバーションから新しいのにもっていく場合でそういう不具合は正直経験ないですね。

上司に雑談のネタとして振ってみて、スルーされたら放置でいいかもw
0077NAME IS NULL
垢版 |
2005/09/15(木) 17:05:31ID:YAKfI9Lt
0078NAME IS NULL
垢版 |
2005/09/16(金) 11:28:07ID:kUbt9r5f
>>74
Oraclr使え。
0079NAME IS NULL
垢版 |
2005/09/16(金) 11:29:47ID:kUbt9r5f
× r
○ e
0080NAME IS NULL
垢版 |
2005/09/16(金) 11:32:08ID:kUbt9r5f
select count
from
where
group by
having
0082NAME IS NULL
垢版 |
2005/09/27(火) 00:40:47ID:qbapjLHZ
 
0083NAME IS NULL
垢版 |
2005/10/10(月) 11:19:17ID:lF9+pPKy
0084NAME IS NULL
垢版 |
2005/10/31(月) 22:01:28ID:+snrpl4m
Like演算子を2つ使いたい時って、
たとえば↓見たいな感じで良いんですよね?
なんか構文エラーになるんですけど・・・。

Select *
Form Teble
Where Name Like "%太郎" And Name2 Like "%本"
0085NAME IS NULL
垢版 |
2005/10/31(月) 22:04:55ID:???
ダブルクォートってAccessか?
Formになってるぞ
0086NAME IS NULL
垢版 |
2005/10/31(月) 22:39:10ID:???
ここで豆知識

Accessのワイルドカードは % じゃなく *
0087とんかち
垢版 |
2005/11/01(火) 20:45:56ID:tdr9kzuO
>>85
SQLServerだす!
シングルコートにして
Fromにしたら大丈夫かな!!!
0088NAME IS NULL
垢版 |
2005/11/01(火) 21:21:20ID:???
まあ括弧付けた方がわかりやすいかな
Where (Name Like "%太郎") And (Name2 Like "%本")

あとはTableのほうがいいな
0089NAME IS NULL
垢版 |
2005/11/01(火) 21:24:04ID:???
冷静なツッコミにワラタ
0090NAME IS NULL
垢版 |
2006/02/12(日) 00:55:51ID:RvqXzbWh
oracle9iではで外部結合を書く場合
(+)じゃなくてouter join って書くほうが推奨されてるの!?
0091NAME IS NULL
垢版 |
2006/02/12(日) 01:29:45ID:???
Oracleによって推奨されているかいないかは知らんし、どっちかを推奨しているかは
わからん。
好みの問題でいいんじゃ??
俺はなるべく、分かりやすいouter join使いたいところだけど。
outer join使うと結合条件と他の条件が分かれてすっきりすりし。

0092NAME IS NULL
垢版 |
2006/02/12(日) 13:12:38ID:???
>(Name Like "%太郎") And (Name2 Like "%本")
ANDだと1件もヒットしなくね?
0093NAME IS NULL
垢版 |
2006/02/14(火) 00:40:19ID:???
>>90
Oracleが推奨っつーか、outer join句の方がよそのRDBMSのSQLでも使える場合が多いので
どっかのローカルルールとしてouter joinを推奨してるってとこじゃないかと
0094NAME IS NULL
垢版 |
2006/02/18(土) 19:01:58ID:???
データベースって何ですか?
0096NAME IS NULL
垢版 |
2006/03/17(金) 12:05:57ID:NzFO+vao
0098""
垢版 |
2006/04/25(火) 20:16:11ID:3eqCav1R
left joinの使い方教えてください。お願いします。
0099NAME IS NULL
垢版 |
2006/05/02(火) 17:06:54ID:???
>>98
つttp://www.atmarkit.co.jp/fnetwork/rensai/sql06/sql1.html#a04
0100NAME IS NULL
垢版 |
2006/05/31(水) 02:28:33ID:???
SQLの厳密な文法を構文図かBNFで記載したサイトか書籍はないでしょうか?
よろしくお願いします
0101NAME IS NULL
垢版 |
2006/05/31(水) 02:57:09ID:???
規格票にあると思うよ。高いけど。
0102NAME IS NULL
垢版 |
2006/06/09(金) 17:05:11ID:???
それぞれのDBのマニュアルについているよ^^
0103NAME IS NULL
垢版 |
2006/11/23(木) 01:57:55ID:???
AccsessでもADOならワイルドカードはやっぱり%

とか、いつのレスに対してだか誰のレスに対してだか分からない
どうでもいいようなことを書いてみる
0104NAME IS NULL
垢版 |
2007/02/22(木) 01:30:10ID:???
あの、一行だけの表(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だけでは無理ですかね・・・
0105NAME IS NULL
垢版 |
2007/02/22(木) 16:45:23ID:???
ストアド書きなはれ
0106NAME IS NULL
垢版 |
2007/03/05(月) 23:00:26ID:???
select 'X' from all_objects where rownum<=&1;
0107NAME IS NULL
垢版 |
2007/03/20(火) 07:23:07ID:fNM6Qnn+
sqlで検索条件を書くときに、絞り込み量が大きい順にすると検索結果が速くなるときいたのですが本当ですか?
0109NAME IS NULL
垢版 |
2007/07/08(日) 23:31:10ID:???
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
;
0110NAME IS NULL
垢版 |
2007/07/14(土) 15:34:50ID:???
漏れだったらこう書くな。
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
;
大文字小文字は拘らない。
0112 ◆O7Fiuvx.6o
垢版 |
2008/04/01(火) 13:09:53ID:ufIqo/xg
テスト
レスを投稿する


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