• 締切済み

セレクト文

学籍番号が1の学生について、科目番号が3の成績よりも良い成績の科目の科目番号と成績を得たい。ただし、通常の統合質問で回答せよ。 と言う問題です。 exercise=# select * from 履修; 科目番号 | 学籍番号 | 成績 ----------+----------+------ 1 | 2 | 80 2 | 1 | 90 2 | 3 | 70 1 | 3 | 100 1 | 4 | 50 1 | 7 | 80 1 | 10 | 75 ・・・・・ select 履修.科目番号,履修.成績 from 履修 where 履修.学籍番号=1; で学籍番号1の学生を選択できるのですが、科目番号3の成績よりも良い・・・と言うところが分かりません。 また、同じ条件で「入れ子型質問で回答せよ」と言うのもあります。よろしくお願いします。

みんなの回答

回答No.2

はじめまして、通りすがると申します。 質問の意味なのですが、私もよく解らないです((通常の統合質問)のところ)。 多分こうゆう事なのでしょうか? >学籍番号が1の学生について、科目番号が3の成績よりも良い成績の科目の科目番号と成績を得たい。  学籍番号が1で科目番号が3の成績より良い成績の科目番号と成績を得たい。? select tb1."科目番号", tb1."成績" from ( select "科目番号", "学籍番号", "成績" from "履修" where ("学籍番号"=1 and "科目番号"=3) ) as ViewA,"履修" as tb1 where tb1."成績" > ViewA."成績"; 説明  1.最初のfromの中  履修テーブルにある、学籍番号が1で科目番号が3のものの成績を取得する。 これを、ViewAとする。  2.最初のselect  ViewAで得た成績より大きい成績を、履修テーブルから抜き出し、科目番号と成績を得る。   よいう事だと思うのですが、最後の「通常の統合質問」という意味が解りません。

全文を見る
すると、全ての回答が全文表示されます。
noname#152201
noname#152201
回答No.1

問題の意味がよくわかりませんが・・・ 「科目番号が3の成績よりも良い成績」の数字が大きい方が良いのか小さい方が良いのかわかりませんね。 select 科目番号,成績 from 履修 where 学籍番号=1 and 科目番号 > 3; または select 科目番号,成績 from 履修 where 学籍番号=1 and 科目番号 < 3; じゃダメなのかな。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • このSQLの意味について

    次のSQLの意味をわかりやすく説明していただけないでしょうか? SELECT 名簿 氏名、哲学概論得点+哲学論文得点 FROM 名簿 成績表 WHERE 名簿 学籍番号=成績表 学籍番号 AND 科目 LIKE ‘哲学%’ 特にWHERE句は、「名簿と成績表に存在する学籍番号を結びつけ、かつ哲学で始まる科目を抽出しなさい」という感じなのでしょうか? これは一体何をすればいいのか全くわからないので、丁寧にご教授ください。よろしくお願いします。

  • accessのSQL文で

    SELECT 科目Aテーブル.学生番号, 名簿テーブル.氏名, 科目Aテーブル.成績 INTO 科目Aテーブル2 FROM 名簿テーブル INNER JOIN 科目Aテーブル ON 名簿テーブル.学生番号 = 科目Aテーブル.学生番号; (これはテーブル作成クエリによるもの) と表示されたのですが SELECT ~ INTO ~ FROM ~ ON ~ ; のような構文はSQLにあるのでしょうか? ACCESS独自の拡張でしょうか? SELECT ~ INTO とSELECTにINTOがつく構文をインターネットで探したのですが見つかりません

  • 【ExcelVBAまたはExcel関数】成績管理

    ※Excel2010を使用しております。 約100名の成績一覧に入力した成績を、個人の成績表(学生ごとにシートがあります)に 反映させるようにしたいのですが、どのようにすればよいか分かりません。 Sheet1に、成績一覧があります(画像sheet1) なお、9001、9002、9003・・・は学籍番号で、3001、3002・・・は科目コードです。 生徒はすべての科目を履修しているのではなく、履修していない科目については、 空欄になっています。 sheet2以降に各生徒の成績表があります。(画像sheet2、sheet3・・・)成績表には、履修していない科目は表示 されていません。 ここで、成績一覧に入力されている成績を、個人の学籍一覧に反映させるように したいのですが、どのようにするのが最も効率的でしょうか。 VLOOk関数でできるかと考えましたが、できませんでした。

  • ~以外のものを検索する

    今、履修テーブルと科目テーブルがあって 履修してる科目と履修していない科目をわけたい。 履修テーブル(knumは科目の番号、idは生徒の番号) knum id 1  2042201 2  2042201 3  2042201 4  2042201 5  2042201 6  2042201 7  2042201 1  2042205 2  2042205 3  2042205 科目テーブル(knumは科目番号 knameは科目名) knum kname 1  英語 2  世界史 3  日本史 4  地理 5  国語  6  数学 7  化学 8  物理 9  生物 というテーブルがあります。 select k.kname from kamoku k,risyu r where k.knum=r.knum and r.id=2042201; とすると 2042201の番号の生徒が履修してる科目を検索できることはできたのですが、履修してない科目を検索することができませんでした。 ちなみに select k.kname from kamoku k,risyu r where k.knum=r.knum and r.id!=2042201; とすると 2042205の学生の履修した科目が検索されてしまいます。 履修してる科目以外を検索するにはどうしたらよいですか? 教えてください。 バージョンは4.0です。

  • Select文のパフォーマンスについて

    Select文のパフォーマンスについて質問です。 (1)select * from table1 where col1='00001' and kbn in (1,2,3,4) (2)select * from table1 where col1='00001' and (kbn = 1 or kbn = 2 or kbn = 3 or kbn = 4) (1)と(2)ではどちらがパフォーマンスがよいのでしょうか? SQLServer2008

  • SQLの作り方

    知り合いに資料作成を頼まれたのですが、 SQLの作り方に四苦八苦してます。 SELECT 学生名簿. 名前,経済学史得点+経済総論得点 FROM 学生名簿.成績一覧 WHERE 学生名簿.学生証番号=成績一覧 学生証番号 AND 科目 LIKE‘経済’ つまり、このSQLが示すものは、 「学生名簿」と「成績一覧」の2つの表から 「名前」と「経済学史得点」と「経済総論得点」を抜粋し、 更に「学生名簿」から学生証番号の有無の確認 「経済OO」で始まる科目の履修が分かる(?) ↑ここが一番自信ないです… と言うこと何でしょうか。。確認なのですが、 小さな事からアドバイス、ご指摘、ご指導を宜しく お願い致します。

  • リレーショナルデータベースについて(情報処理試験用)

    現在情報処理の勉強をしているのですが、 データベースが苦手でどうしても理解できないことがあります。 いくつかの項目を表にする際,区分の仕方がわからず,SQLがつくれません。 1. ・学籍番号 ・氏名 ・住所 ・専攻 ・科目番号 ・科目名 ・単位数 ・成績 これは,全ての項目を学生表,科目表,履修表の3つに分ける例です。 この場合, 学生表(★学籍番号,氏名,専攻) 科目表(★科目番号,科目名,単位数) 履修表(★学籍番号,★科目番号,成績) 以上のように分けられるというのは,学生なので理解できます。 そして次の問題なのですが, 2. ・品目番号 ・品目名 ・在庫量 ・受注番号 ・顧客名 ・受注日 ・受注残 ・納期 これらの項目を「品目表」,「受注表」,「受注明細表」の3つに分ける問題です。この場合どのように区分したらよいでしょうか。 また,区分する際のポイントも教えていただければ嬉しいです。

  • SELECT文が上手く書けません

    会社からSQLのSELECT文を書けと言われて3日目です。PostgreSQL のシステムでWHERE以下が WHERE 売上年月 = ? AND 得意先コード = ? AND 売上種別 = ? としました。画面上では売上年月、得意先コード、売上種別で検索できるようになっているのですが、3種類全て入力しないとエラーになります。この内1種類の入力でも検索できるようにしたいのですが、どのように書けばいいでしょうか? ANDをORに変えたりしたのですが上手くいきません。 全体のSELECT文は external.売上= SELECT 売上番号、売上日、得意先コード、売上区分、金額、入力日 FROM 売上一覧表 WHERE 売上年月 = ? AND 得意先コード = ? AND 売上種別 = ? です。 よろしくお願いします。

  • たぶんSQL?

    友達から質問なのですが、下記のテーブルを 学生テーブル 学籍番号  氏名 1101    バカボンパパ 1102    バカボンママ 1103    バカボン 1104    はじめちゃん  成績テーブル 学籍番号  科目番号  得点 1101    1111    68 1102    1111    75 1103    1111    80 1105    1111    88 どのような条件で結合させれば 学籍番号  氏名      科目番号  得点 1101    バカボンパパ  1111    68 1102    バカボンママ  1111    75 1103    バカボン    1111    80 になるのでしょうか?教えてほしいです。 お願いします。

  • SELECT文

    SELECT文で区分ごとに番号、番号名を表示させたいのですが。 T_テーブルに区分が1から5まであるのですが、select文一発で表示したいです。 番号は1~5,番号2は5~6まで表示したいのです。 区分は2の情報を取得する 1テーブルの情報を番号ごとに分けて表示したいです (例) 番号 番号名     番号1 番号名2 1 iti       5 go 2 ni      6 roku 3 san      7 nana 4 yon      8 hati T_テーブル情報 下記 区分 varchar(2) 番号 varchar(6) 番号名 varchar(16) SELECT T_テーブル.区分, T_テーブル.番号, T_テーブル.番号名, T_テーブル_1.番号, T_テーブル_1.番号名 FROM T_テーブル AS T_M_名称_1 INNER JOIN T_テーブル ON T_テーブル_1.区分 = T_テーブル.区分WHERE T_テーブル.区分 = '2'