X



トップページDB@2ch掲示板
1002コメント294KB
SQL初心者質問スレ [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001NAME IS NULL
垢版 |
2016/05/12(木) 05:29:07.61ID:HmbS4CfD
SQL初心者用の質問スレッドです。
0525NAME IS NULL
垢版 |
2017/04/23(日) 11:12:44.52ID:???
質問返ししてる奴いいかげんウザい
0528NAME IS NULL
垢版 |
2017/04/23(日) 11:50:19.03ID:???
商品名を抽出したいのか
商品名に対するいずれかの単価を抽出したいのか
商品名に対する全ての単価を抽出したいのか

それにしても、単価1から単価50まで並べるというのは苦痛だ
そういうテーブル定義作った奴を縛り首にした方が後々良い結果がでる
0529NAME IS NULL
垢版 |
2017/04/23(日) 13:24:51.53ID:???
>>523
データベースって普通縦なんじゃ・・・。
0531NAME IS NULL
垢版 |
2017/04/23(日) 14:42:39.73ID:???
>>523
縦にしたいです。
うちの会社のマウスホイールは、
全部縦に回るので、縦の方が便利なんです。

この表作った人のは、横に回るのかも知れませんが。

>>528
>商品名に対する全ての単価を抽出したいのか

それです。
0532NAME IS NULL
垢版 |
2017/04/23(日) 14:47:27.11ID:???
共通表式 でぐぐれば終わりな気がする
0534NAME IS NULL
垢版 |
2017/04/23(日) 17:40:50.51ID:???
>単価50

この先、まだまだ増えたりしてな w
0535NAME IS NULL
垢版 |
2017/04/23(日) 17:47:02.05ID:???
エクセルのつもりで追加するからたまらんな
0536NAME IS NULL
垢版 |
2017/04/23(日) 22:26:54.47ID:???
一つの商品に50種類もの単価が付けられると言うのは、そういう理由があるわけでしょ?
例えば、一つの商品に50個のパーツが必要でそれぞれに単価があるとか
あるいは50の地域での販売単価とか
そういう小項目も合わせて表示しないと、
意味不明の50行の単価出力にならないかな?
0537NAME IS NULL
垢版 |
2017/04/24(月) 01:18:15.41ID:???
おれなら実テーブルを変更して、元テーブルと同じ形のビューつくるけどな
0538NAME IS NULL
垢版 |
2017/04/24(月) 10:46:17.61ID:???
>>503
> 名前がぶつかっているのだから、あたりまえでしょうがw

>>513
> だから別名付けてどうぞ

なんか、同名だと駄目で当然的な流れだが、PostgreSQLではエラーにはならない。
エラーになるのが普通なのか?
0540NAME IS NULL
垢版 |
2017/04/24(月) 11:50:05.50ID:???
>>539
> 普通とは?
その疑問の意味がわからない。
0541NAME IS NULL
垢版 |
2017/04/24(月) 12:00:49.79ID:???
>>540
その文脈で普通を
具体的に表現して。
0542NAME IS NULL
垢版 |
2017/04/24(月) 12:40:31.78ID:Ng2xnlDE
インラインビューの別名に実テーブル名を使う心理がわからない。混乱するだけだと思うが。
0543NAME IS NULL
垢版 |
2017/04/24(月) 12:40:38.23ID:???
もはや後に退けなくなった意地の質問返し
不毛である
0544NAME IS NULL
垢版 |
2017/04/24(月) 12:48:45.79ID:???
>>541
え?いやだからPostgreSQL以外のRDBMSじゃエラーになるのが普通なのかって意味だけど?
0546NAME IS NULL
垢版 |
2017/04/24(月) 13:01:37.97ID:???
>>545
そうなんだ。
いや、>>503に誰もコメントしないから、エラーになるのが普通なのかと、ちょっと心配したし。
0547NAME IS NULL
垢版 |
2017/04/24(月) 13:04:55.00ID:???
>>542
ひょっとして、PostgreSQL以外では以下はエラーになるのが普通なの?
select * from (select a, b from hoge) as hoge
まぁ、俺も実在のテーブル名を別名につけようとは思わないんだが。
0548NAME IS NULL
垢版 |
2017/04/24(月) 13:07:17.98ID:???
>>547
心配するな、俺の知ってる範囲ではそれはエラーにならない
0549NAME IS NULL
垢版 |
2017/04/24(月) 13:24:49.68ID:???
別名に関して誤解してる奴が多そうだな
0550NAME IS NULL
垢版 |
2017/04/24(月) 14:45:32.03ID:???
>これをUnionで縦に繋げれば綺麗な表になりますが、
>普通にやると検索が3倍になるので、2回目以降は前回の抽出結果を参照したいんです。

select一回で全項目を取得して、後はアプリにやらせるとか
0551NAME IS NULL
垢版 |
2017/04/24(月) 14:54:59.09ID:???
なんかよくわからんが、case whenでいけるかもよ?
データ例と期待する取得結果を書けば、ちゃんとした答えが返るかも
いまのとこ、何をやりたいのかいまいちわからん
0553NAME IS NULL
垢版 |
2017/04/24(月) 15:35:32.59ID:???
実体が横持ちになっているのが気に入らないが、とりあえず縦持ちのように参照するためにUNION ALLを行った。
しかし縦を横にするクエリはまだ知らない。

というところなんじゃないかな。

そのクエリがわかれば、実体を縦持ちにするのもやぶさかではないみたいな。そんな感じがする。
0554NAME IS NULL
垢版 |
2017/04/24(月) 15:36:53.40ID:???
流れがおかしくなったのは >>503 が照れ隠しのために話を流したかっただけだと思う。
0555NAME IS NULL
垢版 |
2017/04/24(月) 15:54:00.93ID:???
まぁ、価格カラムが50個あるので50個のクエリをunionで繋げました、よりは、クライアントで頑張る方がいいと思う
縦横変換もクライアントで頑張った方が簡単かつ検索コストも低そう
0556NAME IS NULL
垢版 |
2017/04/24(月) 17:59:56.67ID:???
まず価格カラムが50個もあるのが設計として妥当か考えるべきだがな

相関名の有効範囲がUNIONを超えるかどうかがエラーにするかどうかの境目か
そもそも実テーブルと同じ相関名ってエラーになるのが標準仕様だっけ?
0557NAME IS NULL
垢版 |
2017/04/24(月) 18:18:50.51ID:???
「だっけ?」の使い方よ
0559NAME IS NULL
垢版 |
2017/04/24(月) 18:35:58.02ID:Ng2xnlDE
だいたい別の意味の価格だから別カラムで持っているのが普通だから、質問した人間がわかってないんじゃないのか?
0560NAME IS NULL
垢版 |
2017/04/24(月) 21:05:20.45ID:???
カラムに関して誤解してる奴が多そうだな
0562NAME IS NULL
垢版 |
2017/05/07(日) 00:12:31.50ID:???
物凄く初歩的で申し訳ないのですが、SQL Server2008をSQL Server2014へ
アップグレードでインストールした後、不要な2008を消したいんですが
普通にアンインストールでいいものなんでしょうか。
0564NAME IS NULL
垢版 |
2017/05/07(日) 03:31:50.86ID:???
>>563
どうりで出てこないわけですわ。板が違うとは。
ありがとうございます。
0567NAME IS NULL
垢版 |
2017/05/10(水) 20:02:08.20ID:???
社員
社員ID、名前

社員情報
社員ID、血液型、生年月日、性別、身長

身長170cm以上の社員の名前を取得するSQLってどう書けばいいのでしょうか?

SELECT 社員.名前
FROM 社員情報
WHERE 社員情報.身長 >= 170

これで出てきますか?
0569NAME IS NULL
垢版 |
2017/05/10(水) 20:32:12.08ID:f4kloMSM
社員情報に名前入れろや
お前は名無しの社員ちゃうやろアホか
0570NAME IS NULL
垢版 |
2017/05/10(水) 22:05:06.36ID:???
システムがデータベースを使っているのでどうにもできないのです
ざっくり見た感じですが、こんな感じになっていたと思います
0571NAME IS NULL
垢版 |
2017/05/10(水) 22:23:54.78ID:???
ざっくり見ただけで俺に聞くなよ失礼な人だな
0572NAME IS NULL
垢版 |
2017/05/10(水) 22:41:53.38ID:???
失礼しました。やはり方法はないんでしょうか?
0573NAME IS NULL
垢版 |
2017/05/10(水) 23:00:43.24ID:???
INNER JOINすれば済む話では
0574NAME IS NULL
垢版 |
2017/05/10(水) 23:27:46.64ID:???
>>572
怖くて教えられない
なぜSQLを知らない人が仕事用のデータベースをいじろうとしているのか
0575NAME IS NULL
垢版 |
2017/05/10(水) 23:41:35.27ID:???
sqlなんて基本以来10年近くいじってないワイが適当回答すると
SELECT 社員.名前 FROM 社員情報 WHERE 社員.ID IN (SELECT 社員情報.社員ID FROM 社員情報 WHERE 社員情報.身長 >= 170)
0576NAME IS NULL
垢版 |
2017/05/11(木) 00:41:42.41ID:???
>>567
こうかな?

SELECT 社員.名前
FROM 社員, 社員情報
WHERE 社員情報.身長 >= 170 AND
社員.社員ID = 社員情報.社員ID
0577NAME IS NULL
垢版 |
2017/05/11(木) 19:53:55.21ID:???
>>567
社員IDで紐付いてるとかを勝手に想定してくれる訳じゃないので指定してやらないとな

SELECT 社員.名前
FROM 社員情報
INNER JOIN 社員 ON 社員情報.社員ID = 社員.社員ID
WHERE 社員情報.身長 >= 170

>>569
機微な情報は別テーブルとか普通にあるだろ
0578NAME IS NULL
垢版 |
2017/05/11(木) 22:09:00.58ID:kTC/q0g8
>>577
機微な情報は別テーブルとかないし
別テーブルにする意味もないし
そもそも社員の名前は機微な情報ではない

まあ、お前のような多重に勘違いした独り善がりの馬鹿によって作られた
>>567のような出来損ないのスキーマはたまに見かける

あ、勘違いしやすいみたいだから一応断っておくけど
これ褒めてるんじゃないからねw
0579NAME IS NULL
垢版 |
2017/05/11(木) 22:57:42.62ID:???
 
一応書いておくけど、

ここは初心者スレ
0580NAME IS NULL
垢版 |
2017/05/11(木) 23:30:48.76ID:???
大雑把な性格の俺的には、こうかな?

SELECT *
FROM *
LEFT JOIN *
ON * = *
0581NAME IS NULL
垢版 |
2017/05/12(金) 04:58:07.76ID:???
>>578
> そもそも社員の名前は機微な情報ではない
ここまでバカだとは...
機微な情報の意味わかってないだろ w
0582NAME IS NULL
垢版 |
2017/05/12(金) 08:00:05.76ID:???
>>581
もう一つ勘違いしてるみたいだけど
2ちゃんだって素直にありがとうって言ってもいいんだからね
0583NAME IS NULL
垢版 |
2017/05/12(金) 08:29:18.99ID:???
ありがとう2ch
>>578 みたいなバカがいるってことを教えてくれて

これでいいかな w
0584NAME IS NULL
垢版 |
2017/05/12(金) 10:27:51.21ID:???
>>581
機微な個人情報 JISQ15001:2006

・思想,信条又は宗教に関する事項
・人種,民族,門地,本籍地(所在都道府県に関する情報を除く。),身体・精神障害,犯罪歴その他社会的差別の原因となる事項
・勤労者の団結権,団体交渉その他団体行動の行為に関する事項
・集団示威行為への参加,請願権の行使その他の政治的権利の行使に関する事項
・保健医療又は性生活に関する事項
0585NAME IS NULL
垢版 |
2017/05/12(金) 10:38:02.89ID:???
俺の中では「普通にある」
俺の中ではな
0586NAME IS NULL
垢版 |
2017/05/12(金) 11:55:26.59ID:???
誰のマウンティングが決まるんか
興味深いw
0587NAME IS NULL
垢版 |
2017/05/12(金) 12:27:50.14ID:???
>>584
それもそうだけど
>>581はそもそも社員テーブルに社員名がない事の理不尽さに気がついていない

馬鹿がその視野の狭さ故に犯す誤りの典型だねw
0588NAME IS NULL
垢版 |
2017/05/12(金) 12:54:11.14ID:???
マウンティングとかアホなワードがバズったおかげで、>>586みたいな馬鹿が出てくるんだよ
0589NAME IS NULL
垢版 |
2017/05/12(金) 13:09:41.44ID:???
>>567
匿名かが簡単にできる、良いスキーマ
0590NAME IS NULL
垢版 |
2017/05/12(金) 15:41:27.94ID:???
お前わかってないだろ <− 根拠のないマウント
0591NAME IS NULL
垢版 |
2017/05/12(金) 18:40:02.74ID:???
>>578
> 機微な情報は別テーブルとかないし
いや、あると思うよ。

> 別テーブルにする意味もないし
異なる読み取り権限を設定できる。
0592NAME IS NULL
垢版 |
2017/05/12(金) 19:54:33.25ID:???
機微な情報で氏名とか言い出すアホがいて笑える
どう見ても
> 社員情報
> 社員ID、血液型、生年月日、性別、身長
の方だろ
0593NAME IS NULL
垢版 |
2017/05/12(金) 21:23:59.30ID:???
名前は普通に公開されている情報だと思う
0594NAME IS NULL
垢版 |
2017/05/12(金) 22:16:38.19ID:???
schema.ini作るの面倒なんだけど、何とかならん?
テキストファイルにはIMEX=1も効かないし。
0596NAME IS NULL
垢版 |
2017/05/14(日) 16:37:12.49ID:TZtMkQGv
すみません、質問よろしいでしょうか

SELECT name,max(no)
from test;

これがエラーになるんですが何がいけないんでしょう?
noの最大値を持つ行のnameが知りたいだけなんですが……
0597NAME IS NULL
垢版 |
2017/05/14(日) 17:21:20.77ID:???
SELECT name, no FROM test WHERE no = (SELECT max(no) FROM test)

こうかな
0598NAME IS NULL
垢版 |
2017/05/14(日) 21:10:45.84ID:sz1S3gQK
>>596
group by name

を付ける
0599NAME IS NULL
垢版 |
2017/05/15(月) 11:10:24.32ID:???
>>597さんのがまさに求めていたものでした!
whereかhavingで迷ってたんですがwhereだったんですね!
>>598さんも本当にありがとうございました!
0600悪質オンラインショップ
垢版 |
2017/05/15(月) 13:56:08.35ID:YIXunVhi
サイズ違いの商品を送り 返品交換できない 悪質商法 ****E  
   
サイズ違いの商品を送り 返品交換できない 悪質商法 B**

悪質オンラインショップ



担当者が悪質か

2回目のでんわたんとう窓口は すりかえようで いみふにごまkして 

----------------------------------
**** *** オンラインショップのアイテムは独自の方法により採寸しておりますので、
全て実際の商品を計測した実寸サイズとなっております。
ご注文いただいております商品サイズは、正しいものでございます。

誠に恐れ入りますが、サイズが合わない、イメージと異なるといったご理由での
ご購入商品の返品・交換はお断りさせていただいております。

お客様のご希望にそう事が出来ず誠に申し訳ございませんが、
何卒ご了承の程よろしくお願い申し上げます。

----------------------------------

24いんちって Mですか? WEBの説明と実際の商品が違う
0602NAME IS NULL
垢版 |
2017/05/15(月) 14:13:01.96ID:YIXunVhi
ろせぶd
0604NAME IS NULL
垢版 |
2017/05/15(月) 22:04:09.83ID:???
今の会社があまりにもくだらなくて転職のためSQL覚えたい
今はExcelで簡単なVBA書いてる
独学でもどこかにまず入れるだろうか…
それとPostgreSQLとMySQLとどちらがいいのか教えてください
0605NAME IS NULL
垢版 |
2017/05/15(月) 22:20:38.67ID:???
>>604
安心して
いま四種類同時に使ってるから
0606NAME IS NULL
垢版 |
2017/05/15(月) 22:22:08.36ID:???
4種類、じゃ全部視野に入れます
4つ教えてください
0607NAME IS NULL
垢版 |
2017/05/15(月) 22:42:51.61ID:???
標準SQLを覚えるならOracle Express Editionを入れて
alter session set flagger=entry; とか
0609NAME IS NULL
垢版 |
2017/05/15(月) 22:55:33.47ID:???
DB2も入れてやれ
Express-Cっていう無償のエディションもあるぞ
0610NAME IS NULL
垢版 |
2017/05/15(月) 23:16:49.66ID:???
>>607>>608>>609
ありがとうございます!
もうVlookupひとつしか使えない人たちに便利屋扱いされたうえに勝手な都合でくだらない作業詰め込まれるのはゴメンです
最初から綺麗に無駄なく作っておけばいいのに…
でもそれを更に汚くしたのは短期で来た素人自称プログラマ
VBAばかり走らせて荒っぽい処理してエラー残骸があちこちあったり重複ばかりのファイルを量産してった
プログラム覚えてもああいう仕事は絶対したくないと思う
取っ掛かりとしてSQL覚えてその次Pythonとかも覚えたいです
絶対今のところ抜け出してやる
0613NAME IS NULL
垢版 |
2017/05/16(火) 17:20:38.68ID:zTCyNjTh
すいません、質問させてください。
mySQLとSequel Proを使ってテーブルまで作成しています。

レコード登録時に、2つのIDをくっつけて
3つめのIDをSQL内で自動生成したいのですが、
何か効率的な方法はありますでしょうか。

ID1: 100(手入力)
ID2: 101(手入力)

ID3: 100101(自動生成)

データ型はいずれもINTで設定しております。
よろしくお願いします。
0614NAME IS NULL
垢版 |
2017/05/16(火) 17:56:29.93ID:???
>>613
それ、2行登録したら1行自動生成するってこと?
0615NAME IS NULL
垢版 |
2017/05/16(火) 18:36:37.93ID:+kwvKlmq
>>613
行列、列行なのかわからない聞き方だが、それが列、カラムだと想定すると、トリガーでも作らないとできないだろうな。

同じレコードのカラムから導出したデータを別カラムで持つのも馬鹿っぽい。

しかも数値型を連結するなら、いったん文字型に変換しないといけない。

なんでそんなことをしたいのか。ID3なんてビューを作ってみせればいいんじゃないの?
0616NAME IS NULL
垢版 |
2017/05/16(火) 18:56:41.08ID:zTCyNjTh
>>614
>>615
すいません、DBわかってなくて失礼しました。

ID1 ID2 ID3 name
100 101 100101 hoge
101 201 101201 fuga

ID1とID2を繋げて、ID3を生成したかったです。
プライマリキーとは別に、識別用としてのユニークなIDが必要なので。
単純に繋げるには、文字列でやらないとダメみたいですね。
ありがとうございます。
0617NAME IS NULL
垢版 |
2017/05/16(火) 18:57:13.28ID:???
ID2が2桁の時どうするの?
ID1と2と3は同じレコードのカラムなの?
手入力ってINSERT文書くの?
0618NAME IS NULL
垢版 |
2017/05/16(火) 18:59:58.53ID:???
lpad()で0埋めしてcontat で連結して castで数値にする手もあるけど
実行時に必要ならビューでいいよね
0619NAME IS NULL
垢版 |
2017/05/16(火) 19:14:46.64ID:zTCyNjTh
>>617
ID1, 2は3桁のものしか用意しないので基本的には問題ないかと。
すべて同じレコードのカラムですね。
先に手入力と書きましたが、実際はほぼクライアントツールの
インポート経由で登録になります。

>>618
ビューってのがあるんですね、調べてみます。

ありがとうございます。
0620NAME IS NULL
垢版 |
2017/05/16(火) 23:30:43.64ID:K44u4O+q
>>619
3桁で計算もしないなら、データ型が数値型なのは変だよ。
0621NAME IS NULL
垢版 |
2017/05/17(水) 06:52:26.40ID:???
>>620
お前の根拠もない意見なんて聞いてねえから
0622NAME IS NULL
垢版 |
2017/05/17(水) 11:53:42.80ID:GIMFSdsg
>>621
初心者は数字は数値と思い込むのはよくあることだろ。
0623NAME IS NULL
垢版 |
2017/05/17(水) 12:21:15.28ID:???
なんの禅問答やそれ
0624NAME IS NULL
垢版 |
2017/05/17(水) 12:26:07.45ID:???
何でこんなに質問外の話を夢中になって始めるか、理解出来ない
■ このスレッドは過去ログ倉庫に格納されています

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