SQLエディタによる データベースプログラミング 01. データベースとはデータを1つにまとめて 複数のシステムで共有できるようにしたもの 蔵書管理システム 貸出管理システム 生徒ファイル 生徒番号 学年 クラス 番号 名前 性別 住所 貸出ファイル 貸出番号 図書番号 貸出月 貸出日 蔵書ファイル.

Slides:



Advertisements
Similar presentations
データベース. レシートを見てみよう コンビニやスーパーで買物をするときの レシートを見てみよう – 何がかいてあるだろうか? – レジで全部打ち込んでいる? – なぜ、打ち込まないのにレシートには商品名 や価格が出てくるの?
Advertisements

情報処理 第9回第9回第9回第9回. 今日の内容 Excel の起動と画面構成 –Excel の起動 –Excel の画面構成と基本用語 データの入力 – 文字の入力 – 数値の入力 – 日時の入力 – オートフィル.
情報基礎 A 第 4 週 データベースと表計算 情報基礎 A 第 4 週 データベースと表計算 1 徳山 豪 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野.
データベースを体験しよう. データベース データをまとめて管理する仕組み – データを整理整頓して管理すると、 いろいろな目的で活用できる データベースの例 – 料理データベース – 座席予約 – 図書館の貸出 データベース 管理システム データベース 名簿データ 料理データ 食材データ 在庫管理.
MS-EXCEL、 OpenCalcを 用いた表計算
情報処理基礎 2006年 6月 15日.
Accessによるデータベース(1) Ver.1 /11.
エクセル(1)の目次 起動法、ブック、シート、セル ブックの開き方 エクセル画面 マウスポインターの種類 シート数の調節 データの入力法
DB(データベース)のおはなし 作成者:小野正広 DBと言っても、  ドラゴンボール ではないですぞ! 3/1/2017.
エクセル(7)の目次 関数の書式 関数ウィザードの使い方 四捨五入/切り上げ/切り捨て IF関数 問題(1) 問題(2) 問題(3)
情報処理 第12回.
JavaScript プログラミング入門 2006/11/10 神津.
SQLエディタによる データベースプログラミング
3-1 MySQLについて 発表者:藤村元彦 自然言語処理研究室.
Excel による データベース入門 Ver /9.
PHPエディタによる 情報システム演習 01.
6-2 データベース 1.SQLite SQLを単純化した SQLite を使ってデータベースを操作 表「fruit」
JavaによるCAI学習ソフトウェアの開発
Accessによる SQLの操作 ~実際にテーブルを操作してみよう!~.
Accessによるデータベース(3) Ver /11.
心理学情報処理法Ⅰ やってみよう:Excelを使ってみよう.
練習問題4.
文献管理ソフトRefWorksの利用.
3-2.データを取り出す 2004年 5月20日(木) 01T6074X 茂木啓悟.
第6章 2重ループ&配列 2重ループと配列をやります.
データベース.
情報処理 第6回.
情報処理 第6回.
平成22年度に実施を予定するインターネットを 用いた研修システムによる研修 ライブ配信受講手順書
情報処理 第13回.
情報検索演習 第8回 パソコンを起動しておくこと 前から4列目までに着席すること 2005年11月30日 後期 水曜5限
初年次セミナー 第2回 文字の出力.
CiNii Articlesトップページ クイックガイド <キーワードによる検索方法>
この資料は、テキストをもとに、講義のために作成したものです.学習用に活用してください.
14.テーブル定義,一対多の関係,多対多の関係, 外部キー,索引(インデックス),データベース操作
第5回 統計処理(2) 塩浦 昭義 東北大学全学教育科目 情報基礎 A 1セメスター 木曜1,3講時 経済学部・法学部
マイクロソフト Access を使ってみよう 第5回
マイクロソフト Access を使ってみよう 第1回
マイクロソフト Access での SQL 演習 第1回 SQL問い合わせ(クエリ)
マイクロソフト Access を使ってみよう 第4回
表計算 Excel 演習 6. ルックアップ,データの入力規則.
3.成績処理 3.1 成績の平均点など ・・・AVERAGE,MAX,MIN関数 3.2 成績(合計点) ・・・SUM関数
情報処理1~第12回~ 野中良哲.
表計算 Excel 演習 4.検索,条件付き書式設定,並べ替え.
マイクロソフト Access での SQL 演習 第5回 副問い合わせ
関数の書式 ● SUM関数、AVARAGE関数など代表的ないくつかの関数の書式(数式の構文)は、下記のようなものである。 =関数名(引数1,引数2,引数3,・・・・・) ●引数(入力データ)は、数値で入力しても、セル名で指定してもよい。 例: =SUM(A1:A10,B21:B30,C31:C40)
3-3.テーブルを更新する 2004年 4月22日(木) 01T6074X 茂木啓悟.
クイックガイド <キーワードによる検索方法>
マイクロソフト Access での SQL 演習 第4回 並べ替え(ソート)
マイクロソフト Access を使ってみよう 第2回
データベース設計 第8回 クライアント=サーバーモデル(2)
マイクロソフト Access を使ってみよう 第3回
マイクロソフト Access での SQL 演習 第2回 集計,集約
3.リレーショナルデータベース,主キー, SQL
※内容は初版刊行当時のものです。 OPACで図書を探してみよう 学術情報総合センター情報サービス部門.
情報基礎演習I(プログラミング) 第11回 7月12日 水曜5限 江草由佳
C言語 はじめに 2016年 吉田研究室.
統計ソフトウエアRの基礎.
第1章 いよいよプログラミング!! ~文章の表示 printf~
表計算 Excel 演習 1.Excel を使ってみる.
5.集計,ピボットテーブル(クロス集計表)
情報基礎演習I(プログラミング) 第8回 6月8日 水曜5限 江草由佳
Webページに動きを持たせるJavascript言語について 例題のプログラムを通して体験的に理解することとします。
情報検索演習:第4回 前回の配布資料: 教室の前方のカサ立てにある パソコンを起動したさいに入力する 氏名に 「時限-学籍番号-名前」
情報処理 第13回.
データベース第3回目 意味ごとにテーブルを分ける
例題のプログラムを通して JavaScriptの仕組みを理解することとします。
Microsoft Office 2010 クイックガイド ~Excel編~
SQL J2EE I (データベース論) 第3回 /
SQL データベース論 第11回.
Presentation transcript:

SQLエディタによる データベースプログラミング 01

データベースとはデータを1つにまとめて 複数のシステムで共有できるようにしたもの 蔵書管理システム 貸出管理システム 生徒ファイル 生徒番号 学年 クラス 番号 名前 性別 住所 貸出ファイル 貸出番号 図書番号 貸出月 貸出日 蔵書ファイル 図書番号 書名 著者名 分類 データベース 情報システム 前回のおさらい

関係データベースではデータを行(レコード)と 列(フィールド)による2次元の表(テーブル)で あらわし複数の表を組み合わせてデータを管理する 生徒番号学年クラス番号名前性別住所 奥沢一輝男狛田村 岡田一男男佐津町 吉村一郎男坂本村 行(レコード):1件ずつのデータ 列(フィールド):データ項目 前回のおさらい

関係データベースの表の操作  射影 指定した列(フィールド)を取り出す  選択 指定した行(レコード)を取り出す  結合 2つ以上の表(テーブル)を結びつける サクセスでこれらの操作を体験 前回のおさらい

データベースをプログラムで検索しよう ・コンピュータにはプログラムで指示をする ・プログラムはコンピュータに伝わる言語 (プログラミング言語)で書く ・SQLはデータベースを操作するための言語 ・今日はSQLでデータベースからデータを検索してみよう 今回の学習内容 前回は図書館だったが、今回は一般の商品を考えてみよう!!!

世の中のシステムでは、SQLというデータベースを 操作するための言語が使われている 商品コー ド 商品名メーカー価格 C4009 チキンヌードル<カ レー味> みずうみ製麺 150 C6390 坦々ヌードルみずうみ製麺 150 C7320 トマトヌードルみずうみ製麺 150 C8522 シーフードヌードルみずうみ製麺 150 :::: 商品コード商品名 C4009 チキンヌードル<カレ ー味> C6390 坦々ヌードル C7320 トマトヌードル C8522 シーフードヌードル :: サクセス:「表示 商品データ」サクセス:「射影 商品コード、商品名」 商品 コード 商品名メーカー価格 C7320 トマトヌードルみずうみ製麺 150 サクセス:「選択 商品名 トマトヌードル」 一般の商品をサクセスで考えると…

今回は「商品表(テーブル)」を扱う ・表(テーブル)名:product ・4個の列(フィールド)がある。 ・pidは商品コード。 この番号で商品を特定できる。(同じ番号の商品はない) ・pname, pmaker, ppriceに商品名、メーカー、価格が 入っている。 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格

SQLエディタを起動 SQL エディタを使って データベースを操作しよう! ● SQL エディタ

クラスIDとユーザIDの入力 クラスID・ユーザID入力エリアに それぞれ指示のあったIDを入力してください。 クラスID : 指定した6桁の数字 ユーザID : 自分の番号など(例: A07)

・画面のSQL実行エリアにプログラムを入れて実行する。 SQL実行エリア SQLエディタの使い方(1)

実行したプログラムは上の履歴表示エリアに追加される 履歴表示エリアのプログラムはマウスでクリックで 再度使える。 実行した結果は下に表示される。 実行されたプログラムの履歴 SQLを実行すると 実行結果が表示される SQLエディタの使い方(2)

SQL文が間違っていたら、エラーメッセージが表示される。 SQLエディタの使い方(3)

まずはデータベースに接続しよう 今回は「shop」データベースを使用します。 SQL実行エリアに「use shop;」と入力しましょう。

履歴表示エリアに入力したプログラムが表示されます。 SQL実行エリアの下に接続成功のコメントが表示されます。 接続成功のメッセージ 入力したプログラムが履歴として表示 まずはデータベースに接続しよう

SQLの書き方 ・英語の単語で命令を書く。英語の文章と並びが似ている。 select * from product; (英文として読むと「商品表(テーブル)から * を選べ」という意味になる) ・「select」は「選択した結果を表示する」命令。 ・「*」は「すべての項目」の意味。 ・「product」は「表(テーブル)の名前」。 ・英文と同じく単語を空白で区切る。末尾は「.」ではなく「 ;」(セミコロン)を書く。

・「 * 」の部分に列(フィールド)名を書くと そのフィールドだけが表示される。 ・2個以上の列(フィールド)名は「, 」(カンマ)で区切る。 射影の書き方 select フィールド名 from テーブル名; (例)商品名と価格のフィールドを表示する select pname, pprice from product;

● 射影の書き方 ● 「product」テーブルのフィールド名 例題 1.1 「商品名」だけを表示しよう。 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名;

select pname from product; 例題 1.1 「商品名」だけを表示しよう。 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答

select pname from product; 例題 1.1 「商品名」だけを表示しよう。 解答

● 射影の書き方 ※ 2個以上のフィールド名は「 ,」 (カンマ)で区切る ● 「product」テーブルのフィールド名 例題 1.2 「商品名」と「メーカー」を表示しよう 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名, フィールド名 from テーブル名 ;

select pname,pmaker from product; 例題 1.2 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 「商品名」と「メーカー」を表示しよう

select pname,pmaker from product; 例題 1.2 解答 「商品名」と「メーカー」を表示しよう

・条件で選択するときは「where」に続いて条件を書く。 選択条件の書き方 ・等しい 「=」 ・大きい小さい「>」「<」 ・以上以下「>=」「 」 (例)140円の商品を表示する select * from product where pprice=140; select フィールド名 from テーブル名 where 条件式 ;

● 選択条件の書き方 ● 「product」テーブルのフィールド名 例題 2.1 「150円の商品」を表示しよう 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 where 条件式 ; ・等しい 「=」 ・大きい小さい「>」「<」 ・以上以下「>=」「 」

select * from product where pprice=150; 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 例題 2.1 「150円の商品」を表示しよう

select * from product where pprice=150; 解答 例題 2.1 「150円の商品」を表示しよう

● 選択条件の書き方 ● 「product」テーブルのフィールド名 例題 2.2 「150円以上の商品」を表示しよう 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 where 条件式 ; ・等しい 「=」 ・大きい小さい「>」「<」 ・以上以下「>=」「 」

select * from product where pprice>=150; 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 例題 2.2 「150円以上の商品」を表示しよう

select * from product where pprice>=150; 解答 例題 2.2 「150円以上の商品」を表示しよう

● 選択条件の書き方 ● 「product」テーブルのフィールド名 例題 2.3 「150円以外の商品」を表示しよう 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 where 条件式 ; ・等しい 「=」 ・大きい小さい「>」「<」 ・以上以下「>=」「 」

select * from product where pprice<>150; 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 例題 2.3 「150円以外の商品」を表示しよう

select * from product where pprice<>150; 解答 例題 2.3 「150円以外の商品」を表示しよう

・文字で選択するときは、条件の文字列を「 ’ 」 (クォーテーション)で囲む。 選択条件の書き方(文字列) select フィールド名 from テーブル名 where フィールド名= ’ 文字列 ’ ; (例)メーカが「ラビット乳業」の商品を表示する select * from product where pmaker= ' ラビット乳業 ’ ;

● 選択条件の書き方(文字列) ● 「product」テーブルのフィールド名 例題 3.1 「メーカーがみずうみ製麺の商品」 を表示しよう 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 where フィールド名= ’ 文字列 ’ ;

select * from product where pmaker= ’ みずうみ製麺 ’ ; 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 例題 3.1 「メーカーがみずうみ製麺の商品」 を表示しよう

select * from product where pmaker= ’ みずうみ製麺 ’ ; 解答 例題 3.1 「メーカーがみずうみ製麺の商品」 を表示しよう

● 選択条件の書き方(文字列) ● 「product」テーブルのフィールド名 例題 3.2 「商品名が麦茶の商品」 を表示しよう 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 where フィールド名= ’ 文字列 ’ ;

select * from product where pname=’ 麦茶 ’; 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 例題 3.2 「商品名が麦茶の商品」 を表示しよう

select * from product where pname=’ 麦茶 ’; 解答 例題 3.2 「商品名が麦茶の商品」 を表示しよう

・2個以上の条件は「AND」でつなぐ。 (どちらかが成り立てばよい場合は「OR」) 選択条件の書き方(複数の条件) select フィールド名 from テーブル名 where 条件式 AND 条件式; (例)「ラビット乳業の140円」の商品を表示する select * from product where pprice=140 AND pmaker= ’ ラビット乳業 ’ ;

● 選択条件の書き方(複数の条件) ● 「product」テーブルのフィールド名 例題 4.1 「みずうみ製麺の150円の商品」 を表示しよう 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 where 条件式 AND 条件式; ※2個以上の条件は「AND」、どちらかが成り立てばよい場合は「OR」

select * from product where pmaker=’ みずうみ製麺 ’ AND pprice=150; 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 例題 4.1 「みずうみ製麺の150円の商品」 を表示しよう

select * from product where pmaker=’ みずうみ製麺 ’ AND pprice=150; 解答 例題 4.1 「みずうみ製麺の150円の商品」 を表示しよう

● 選択条件の書き方(複数の条件) ● 「product」テーブルのフィールド名 例題 4.2 「150円以上か140未満の商品」 を表示しよう 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 where 条件式 AND 条件式; ※2個以上の条件は「AND」、どちらかが成り立てばよい場合は「OR」

select * from product where pprice>=150 OR pprice<140; 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 例題 4.2 「150円以上か140未満の商品」 を表示しよう

select * from product where pprice>=150 OR pprice<140; 解答 例題 4.2 「150円以上か140未満の商品」 を表示しよう

まとめ ・SQLを使うと、1行で選択や射影を 行えて便利 ・来週はSQLを使った検索の続きを行う 最後の授業でオリジナルデータベースを使った演習を行うので 登録したい商品情報を考え、配布のExcelシートに記入する。 宿題

SQLエディタによる データベースプログラミング 02

SQLの振り返り ・表示の基本形 ・射影 ・選択条件 select フィールド名 from テーブル名; select フィールド名 from テーブル名 where 条件式 ; ※フィールド名の代わりに「*(アスタリスク)」を指定すると 全てのフィールドの値を返す。 select * from product;

前回と同様に「商品表(テーブル)」を扱う ・表(テーブル)名:product ・4個の列(フィールド)がある。 ・pidは商品コード。 この番号で商品を特定できる。(同じ番号の商品はない) ・pname, pmaker, ppriceに商品名、メーカー、価格が 入っている。 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格

SQLエディタを起動 SQL エディタを使って データベースを操作しよう! ● SQL エディタ

クラスIDとユーザIDの入力 クラスID・ユーザID入力エリアに それぞれ指示のあったIDを入力してください。 クラスID : 指定した6桁の数字 ユーザID : 自分の番号など(例: A07)

データベースに接続する 演習では「shop」データベースを使用します。 SQL実行エリアに「use shop;」と入力しましょう。

・「order by asc」で結果を指定したフィールドで 昇順(小さい順)に並べられる。 ※ascは省略可 ・「desc」を付けると降順(大きい順)になる。 結果の並べ方 select フィールド名 from テーブル名 (例)価格の安い順 select * from product order by pprice; (例)価格の高い順 select * from product order by pprice desc; order by フィールド名 asc ;

● 昇順に並べる書き方 ・価格が安い順 問 1 価格の安い順に並べた際に 最初にある商品名とメーカーは何か? 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 order by フィールド名 asc ; select * from product order by pprice;

解答 問 1 価格の安い順に並べた際に 最初にある商品名とメーカーは何か?

● 昇順に並べる書き方 ・価格が高い順 問 2 価格の高い順に並べた際に 最初にある商品名とメーカーは何か? 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 order by フィールド名 desc ; select * from product order by pprice desc;

解答 問 2 価格の高い順に並べた際に 最初にある商品名とメーカーは何か?

・指定した文字列で検索するときは「like」を使う。 ・「%」を検索条件(文字列)の前後において指定する。 文字を含む検索の書き方 select フィールド名 from テーブル名 (例)「茶」という文字を含む商品名を選択する select * from product where pname like ’% 茶 %’; where フィールド名 like ' 検索条件 '; ※「%」は「この位置にどんな文字列があってもいい(なくてもいい)」という意味 ※「%」は必ず半角で書くこと!

● 文字を含む検索の書き方 ・「%」を検索条件(文字列)の前後において指定する。 (例) like ‘% 茶 %’; 生姜番茶、煎茶百年 問 3 「商品名に麦を含む商品」を表示しよう。 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 where フィールド名 like ' 検索条件 ';

問 3 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 「商品名に麦を含む商品」を表示しよう。 select * from product where pname like '% 麦 %';

問 3 解答 「商品名に麦を含む商品」を表示しよう。 select * from product where pname like '% 麦 %';

● 文字を含む検索の書き方 ・「%」を検索条件(文字列)の前後において指定する。 問 4 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select フィールド名 from テーブル名 where フィールド名 like ' 検索条件 '; 「商品名が茶で終わる商品」を表示しよう。

列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 select * from product where pname like '% 茶 '; 問 4 「商品名が茶で終わる商品」を表示しよう。

解答 select * from product where pname like '% 茶 '; 問 4 「商品名が茶で終わる商品」を表示しよう。

・結果の件数 ・合計 ・平均 結果の件数や合計を表示する select count( フィールド名 ) from テーブル名 ; (例)全てのレコード数 を表示する select count(*) from product; select sum( フィールド名 ) from テーブル名 ; select avg( フィールド名 ) from テーブル名 ; ※ 「*(アスタリスク)」を指定した場合はすべてのレコード数を取得

● 結果の件数の書き方 ● 選択条件の書き方 問 5 価格が150円の商品のレコード数は? 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select count(*) from テーブル名 ; select フィールド名 from テーブル名 where 条件式 ;

列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 select count(*) from product where pprice=150; 問 5 価格が150円の商品のレコード数は?

解答 select count(*) from product where pprice=150; 問 5 価格が150円の商品のレコード数は?

● 合計の書き方 問 6 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 「商品の価格の合計」を表示しよう。 select sum( フィールド名 ) from テーブル名 ;

列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 select sum(pprice) from product; 問 6 「商品の価格の合計」を表示しよう。

解答 問 6 「商品の価格の合計」を表示しよう。 select sum(pprice) from product;

● 結果の件数の書き方 問 7 「商品の平均価格」を表示しよう。 列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 select avg( フィールド名 ) from テーブル名 ;

列 ( フィールド ) 名 pidpnamepmakerpprice 意味商品コード商品名メーカー価格 解答 問 7 「商品の平均価格」を表示しよう。 select avg(pprice) from product;

解答 問 7 「商品の平均価格」を表示しよう。 select avg(pprice) from product;

まとめ 「order by」で検索結果を小さい順などに 並べ替えられる。 「%」で文字を含む検索を行える。 「count」や「sum」で件数や合計を 計算できる。 来週は登録したデータを検索するインターネットの プログラムを体験する。 宿題 HTML、CSS、PHPがどのようなものか調べておく