init
This commit is contained in:
649
【練習問題】 SQL/Question2/MySQL_Questions2.html
Normal file
649
【練習問題】 SQL/Question2/MySQL_Questions2.html
Normal file
@@ -0,0 +1,649 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>MySQL SQL問題集2</title>
|
||||
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
|
||||
|
||||
<style>
|
||||
/*---------------------------------------------------------------------------------------------
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
body {
|
||||
font-family: "Segoe WPC", "Segoe UI", "SFUIText-Light", "HelveticaNeue-Light", sans-serif, "Droid Sans Fallback";
|
||||
font-size: 14px;
|
||||
padding: 0 12px;
|
||||
line-height: 22px;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
#code-csp-warning {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
right: 0;
|
||||
color: white;
|
||||
margin: 16px;
|
||||
text-align: center;
|
||||
font-size: 12px;
|
||||
font-family: sans-serif;
|
||||
background-color:#444444;
|
||||
cursor: pointer;
|
||||
padding: 6px;
|
||||
box-shadow: 1px 1px 1px rgba(0,0,0,.25);
|
||||
}
|
||||
|
||||
#code-csp-warning:hover {
|
||||
text-decoration: none;
|
||||
background-color:#007acc;
|
||||
box-shadow: 2px 2px 2px rgba(0,0,0,.25);
|
||||
}
|
||||
|
||||
|
||||
body.scrollBeyondLastLine {
|
||||
margin-bottom: calc(100vh - 22px);
|
||||
}
|
||||
|
||||
body.showEditorSelection .code-line {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
body.showEditorSelection .code-active-line:before,
|
||||
body.showEditorSelection .code-line:hover:before {
|
||||
content: "";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: -12px;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body.showEditorSelection li.code-active-line:before,
|
||||
body.showEditorSelection li.code-line:hover:before {
|
||||
left: -30px;
|
||||
}
|
||||
|
||||
.vscode-light.showEditorSelection .code-active-line:before {
|
||||
border-left: 3px solid rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
|
||||
.vscode-light.showEditorSelection .code-line:hover:before {
|
||||
border-left: 3px solid rgba(0, 0, 0, 0.40);
|
||||
}
|
||||
|
||||
.vscode-dark.showEditorSelection .code-active-line:before {
|
||||
border-left: 3px solid rgba(255, 255, 255, 0.4);
|
||||
}
|
||||
|
||||
.vscode-dark.showEditorSelection .code-line:hover:before {
|
||||
border-left: 3px solid rgba(255, 255, 255, 0.60);
|
||||
}
|
||||
|
||||
.vscode-high-contrast.showEditorSelection .code-active-line:before {
|
||||
border-left: 3px solid rgba(255, 160, 0, 0.7);
|
||||
}
|
||||
|
||||
.vscode-high-contrast.showEditorSelection .code-line:hover:before {
|
||||
border-left: 3px solid rgba(255, 160, 0, 1);
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #4080D0;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:focus,
|
||||
input:focus,
|
||||
select:focus,
|
||||
textarea:focus {
|
||||
outline: 1px solid -webkit-focus-ring-color;
|
||||
outline-offset: -1px;
|
||||
}
|
||||
|
||||
hr {
|
||||
border: 0;
|
||||
height: 2px;
|
||||
border-bottom: 2px solid;
|
||||
}
|
||||
|
||||
h1 {
|
||||
padding-bottom: 0.3em;
|
||||
line-height: 1.2;
|
||||
border-bottom-width: 1px;
|
||||
border-bottom-style: solid;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
h1 code,
|
||||
h2 code,
|
||||
h3 code,
|
||||
h4 code,
|
||||
h5 code,
|
||||
h6 code {
|
||||
font-size: inherit;
|
||||
line-height: auto;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #4080D0;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
table > thead > tr > th {
|
||||
text-align: left;
|
||||
border-bottom: 1px solid;
|
||||
}
|
||||
|
||||
table > thead > tr > th,
|
||||
table > thead > tr > td,
|
||||
table > tbody > tr > th,
|
||||
table > tbody > tr > td {
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
table > tbody > tr + tr > td {
|
||||
border-top: 1px solid;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 0 7px 0 5px;
|
||||
padding: 0 16px 0 10px;
|
||||
border-left: 5px solid;
|
||||
}
|
||||
|
||||
code {
|
||||
font-family: Menlo, Monaco, Consolas, "Droid Sans Mono", "Courier New", monospace, "Droid Sans Fallback";
|
||||
font-size: 14px;
|
||||
line-height: 19px;
|
||||
}
|
||||
|
||||
body.wordWrap pre {
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
.mac code {
|
||||
font-size: 12px;
|
||||
line-height: 18px;
|
||||
}
|
||||
|
||||
pre:not(.hljs),
|
||||
pre.hljs code > div {
|
||||
padding: 16px;
|
||||
border-radius: 3px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/** Theming */
|
||||
|
||||
.vscode-light,
|
||||
.vscode-light pre code {
|
||||
color: rgb(30, 30, 30);
|
||||
}
|
||||
|
||||
.vscode-dark,
|
||||
.vscode-dark pre code {
|
||||
color: #DDD;
|
||||
}
|
||||
|
||||
.vscode-high-contrast,
|
||||
.vscode-high-contrast pre code {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.vscode-light code {
|
||||
color: #A31515;
|
||||
}
|
||||
|
||||
.vscode-dark code {
|
||||
color: #D7BA7D;
|
||||
}
|
||||
|
||||
.vscode-light pre:not(.hljs),
|
||||
.vscode-light code > div {
|
||||
background-color: rgba(220, 220, 220, 0.4);
|
||||
}
|
||||
|
||||
.vscode-dark pre:not(.hljs),
|
||||
.vscode-dark code > div {
|
||||
background-color: rgba(10, 10, 10, 0.4);
|
||||
}
|
||||
|
||||
.vscode-high-contrast pre:not(.hljs),
|
||||
.vscode-high-contrast code > div {
|
||||
background-color: rgb(0, 0, 0);
|
||||
}
|
||||
|
||||
.vscode-high-contrast h1 {
|
||||
border-color: rgb(0, 0, 0);
|
||||
}
|
||||
|
||||
.vscode-light table > thead > tr > th {
|
||||
border-color: rgba(0, 0, 0, 0.69);
|
||||
}
|
||||
|
||||
.vscode-dark table > thead > tr > th {
|
||||
border-color: rgba(255, 255, 255, 0.69);
|
||||
}
|
||||
|
||||
.vscode-light h1,
|
||||
.vscode-light hr,
|
||||
.vscode-light table > tbody > tr + tr > td {
|
||||
border-color: rgba(0, 0, 0, 0.18);
|
||||
}
|
||||
|
||||
.vscode-dark h1,
|
||||
.vscode-dark hr,
|
||||
.vscode-dark table > tbody > tr + tr > td {
|
||||
border-color: rgba(255, 255, 255, 0.18);
|
||||
}
|
||||
|
||||
.vscode-light blockquote,
|
||||
.vscode-dark blockquote {
|
||||
background: rgba(127, 127, 127, 0.1);
|
||||
border-color: rgba(0, 122, 204, 0.5);
|
||||
}
|
||||
|
||||
.vscode-high-contrast blockquote {
|
||||
background: transparent;
|
||||
border-color: #fff;
|
||||
}
|
||||
</style>
|
||||
|
||||
<style>
|
||||
/* Tomorrow Theme */
|
||||
/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */
|
||||
/* Original theme - https://github.com/chriskempson/tomorrow-theme */
|
||||
|
||||
/* Tomorrow Comment */
|
||||
.hljs-comment,
|
||||
.hljs-quote {
|
||||
color: #8e908c;
|
||||
}
|
||||
|
||||
/* Tomorrow Red */
|
||||
.hljs-variable,
|
||||
.hljs-template-variable,
|
||||
.hljs-tag,
|
||||
.hljs-name,
|
||||
.hljs-selector-id,
|
||||
.hljs-selector-class,
|
||||
.hljs-regexp,
|
||||
.hljs-deletion {
|
||||
color: #c82829;
|
||||
}
|
||||
|
||||
/* Tomorrow Orange */
|
||||
.hljs-number,
|
||||
.hljs-built_in,
|
||||
.hljs-builtin-name,
|
||||
.hljs-literal,
|
||||
.hljs-type,
|
||||
.hljs-params,
|
||||
.hljs-meta,
|
||||
.hljs-link {
|
||||
color: #f5871f;
|
||||
}
|
||||
|
||||
/* Tomorrow Yellow */
|
||||
.hljs-attribute {
|
||||
color: #eab700;
|
||||
}
|
||||
|
||||
/* Tomorrow Green */
|
||||
.hljs-string,
|
||||
.hljs-symbol,
|
||||
.hljs-bullet,
|
||||
.hljs-addition {
|
||||
color: #718c00;
|
||||
}
|
||||
|
||||
/* Tomorrow Blue */
|
||||
.hljs-title,
|
||||
.hljs-section {
|
||||
color: #4271ae;
|
||||
}
|
||||
|
||||
/* Tomorrow Purple */
|
||||
.hljs-keyword,
|
||||
.hljs-selector-tag {
|
||||
color: #8959a8;
|
||||
}
|
||||
|
||||
.hljs {
|
||||
display: block;
|
||||
overflow-x: auto;
|
||||
color: #4d4d4c;
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
.hljs-emphasis {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.hljs-strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
</style>
|
||||
|
||||
<style>
|
||||
/*
|
||||
* Markdown PDF CSS
|
||||
*/
|
||||
|
||||
body {
|
||||
font-family: "Meiryo", "Segoe WPC", "Segoe UI", "SFUIText-Light", "HelveticaNeue-Light", sans-serif, "Droid Sans Fallback";
|
||||
}
|
||||
|
||||
pre {
|
||||
background-color: #f8f8f8;
|
||||
border: 1px solid #cccccc;
|
||||
border-radius: 3px;
|
||||
overflow-x: auto;
|
||||
white-space: pre-wrap;
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
|
||||
pre:not(.hljs) {
|
||||
padding: 23px;
|
||||
line-height: 19px;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
background: rgba(127, 127, 127, 0.1);
|
||||
border-color: rgba(0, 122, 204, 0.5);
|
||||
}
|
||||
|
||||
.emoji {
|
||||
height: 1.4em;
|
||||
}
|
||||
|
||||
/* for inline code */
|
||||
:not(pre):not(.hljs) > code {
|
||||
color: #C9AE75; /* Change the old color so it seems less like an error */
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
/* Page Break : use <div class="page"/> to insert page break
|
||||
-------------------------------------------------------- */
|
||||
.page {
|
||||
page-break-after: always;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<h1>MySQL SQL問題集 part2</h1>
|
||||
<p><strong>SQL応用</strong></p>
|
||||
<p><a href="../Question1/MySQL_Questions1.html">MySQL SQL問題集 part1</a></p>
|
||||
<h2><strong>問1 テーブル作成</strong></h2>
|
||||
<p>図のようなテーブルを作成して、データを登録してください。</p>
|
||||
<h3>テーブル名</h3>
|
||||
<p><strong>item_category</strong></p>
|
||||
<h3>カラム</h3>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:left">物理カラム名</th>
|
||||
<th style="text-align:center">論理カラム名</th>
|
||||
<th style="text-align:center">型</th>
|
||||
<th style="text-align:center">主キー</th>
|
||||
<th style="text-align:center">NOT NULL</th>
|
||||
<th style="text-align:center">その他</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="text-align:left">category_id</td>
|
||||
<td style="text-align:center">カテゴリID</td>
|
||||
<td style="text-align:center">INT</td>
|
||||
<td style="text-align:center">〇</td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center">自動採番</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:left">category_name</td>
|
||||
<td style="text-align:center">カテゴリ名</td>
|
||||
<td style="text-align:center">VARCHAR(256)</td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center">〇</td>
|
||||
<td style="text-align:center"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:left"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><img src="../img/question2/図1.png" alt="図1"></p>
|
||||
<h2><strong>問2 テーブル作成</strong></h2>
|
||||
<p>図のようなテーブルを作成して、データを登録してください。</p>
|
||||
<h3>テーブル名</h3>
|
||||
<p><strong>items</strong></p>
|
||||
<h3>カラム</h3>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:left">物理カラム名</th>
|
||||
<th style="text-align:center">論理カラム名</th>
|
||||
<th style="text-align:center">型</th>
|
||||
<th style="text-align:center">主キー</th>
|
||||
<th style="text-align:center">外部キー</th>
|
||||
<th style="text-align:center">NOT NULL</th>
|
||||
<th style="text-align:center">その他</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="text-align:left">item_id</td>
|
||||
<td style="text-align:center">アイテムID</td>
|
||||
<td style="text-align:center">INT</td>
|
||||
<td style="text-align:center">〇</td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center">自動採番</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:left">name</td>
|
||||
<td style="text-align:center">アイテム名</td>
|
||||
<td style="text-align:center">VARCHAR(256)</td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center">〇</td>
|
||||
<td style="text-align:center"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:left">price</td>
|
||||
<td style="text-align:center">価格</td>
|
||||
<td style="text-align:center">INT</td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center">〇</td>
|
||||
<td style="text-align:center"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:left">category_id</td>
|
||||
<td style="text-align:center">カテゴリID</td>
|
||||
<td style="text-align:center">INT</td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center">item_categoryのcategory_id</td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:left"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
<td style="text-align:center"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><img src="../img/question2/図2.png" alt="図2"></p>
|
||||
<h2><strong>問3 SELECT文作成</strong></h2>
|
||||
<p>図のような検索結果になるSQLを作成してください。</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:left">条件</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="text-align:left">itemsテーブルとitem_categoryテーブルを結合</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:left">category_idのカラムは一個だけしか出さないこと</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><img src="../img/question2/図3.png" alt="図3"></p>
|
||||
<p>※A5SQLを使用した場合は図と同じ表示になりません。その場合、一番右側のカラム名はname_1で構いません。</p>
|
||||
|
||||
<h2><strong>問4 SELECT文作成</strong></h2>
|
||||
<p>図のような検索結果になるSQLを作成してください。</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:left">条件</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="text-align:left">priceを低い⇒高いに並びかえる</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><img src="../img/question2/図4.png" alt="図4"></p>
|
||||
<p>※A5SQLを使用した場合は図と同じ表示になりません。その場合、一番右側のカラム名はname_1で構いません。</p>
|
||||
|
||||
<h2><strong>問5 SELECT文作成</strong></h2>
|
||||
<p>図のような検索結果になるSQLを作成してください。</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:left">条件</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="text-align:left">カテゴリが家具のデータのみ抽出</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><img src="../img/question2/図5.png" alt="図5"></p>
|
||||
<p>※A5SQLを使用した場合は図と同じ表示になりません。その場合、一番右側のカラム名はname_1で構いません。</p>
|
||||
|
||||
<h2><strong>問6 SELECT文作成</strong></h2>
|
||||
<p>図のような検索結果になるSQLを作成してください。</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:left">条件</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="text-align:left">金額が1,000円から50,000円のものだけ抽出</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><img src="../img/question2/図6.png" alt="図6"></p>
|
||||
<p>※A5SQLを使用した場合は図と同じ表示になりません。その場合、一番右側のカラム名はname_1で構いません。</p>
|
||||
|
||||
<h2><strong>問7 SELECT文作成</strong></h2>
|
||||
<p>図のような検索結果になるSQLを作成してください。</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:left">条件</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="text-align:left">itemsのレコード数を抽出</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:left">別名をつけて抽出</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><img src="../img/question2/図7.png" alt="図7"></p>
|
||||
<h2><strong>問8 SELECT文作成</strong></h2>
|
||||
<p>図のような検索結果になるSQLを作成してください。</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:left">条件</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="text-align:left">items内の一番価格が高いレコードを抽出</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:left">サブクエリを使うこと</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><img src="../img/question2/図8.png" alt="図8"></p>
|
||||
<p>※A5SQLを使用した場合は図と同じ表示になりません。その場合、一番右側のカラム名はname_1で構いません。</p>
|
||||
|
||||
<h2><strong>問9 SELECT文作成</strong></h2>
|
||||
<p>図のような検索結果になるSQLを作成してください。</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:left">条件</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="text-align:left">nameから「の」を含むものだけ抽出</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><img src="../img/question2/図9.png" alt="図9"></p>
|
||||
<p>※A5SQLを使用した場合は図と同じ表示になりません。その場合、一番右側のカラム名はname_1で構いません。</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
214
【練習問題】 SQL/Question2/【+α】ER図/MySQL_question3.a5er
Normal file
214
【練習問題】 SQL/Question2/【+α】ER図/MySQL_question3.a5er
Normal file
@@ -0,0 +1,214 @@
|
||||
# A5:ER FORMAT:13
|
||||
# A5:ER ENCODING:UTF8
|
||||
# A5:ER Mk-1 Copyright (C)2007 m.matsubara
|
||||
# A5:SQL Mk-2 Copyright (C)1997 m.matsubara
|
||||
# https://a5m2.mmatsubara.com
|
||||
|
||||
[Manager]
|
||||
ProjectName=
|
||||
Author=
|
||||
MaxEntityRowShow=1000
|
||||
ReadOnlyRecommend=0
|
||||
Page=Main
|
||||
PageInfo="Main",2,"A3Landscape",$FFFFFF
|
||||
LogicalView=1
|
||||
DecodeDomain=0
|
||||
ViewModePageIndividually=1
|
||||
ViewMode=2
|
||||
ViewFormat=0
|
||||
UseNondependenceDashLine=0
|
||||
FontName=Tahoma
|
||||
FontSize=6
|
||||
PaperSize=A4Landscape
|
||||
HeaderLeft=
|
||||
HeaderCenter=
|
||||
HeaderRight=
|
||||
FooterLeft=
|
||||
FooterCenter=
|
||||
FooterRight=
|
||||
ShowPageoutRelation=1
|
||||
DefaultPkName=%0:s_PKC
|
||||
DefaultPkIndexName=%0:s_PKI
|
||||
DefaultIndexName=%0:s_IX%1:d
|
||||
DefaultFkName=%0:s_FK%1:d
|
||||
SqlSeparator=0
|
||||
ShowTag=1
|
||||
ShowCommonAttributes=0
|
||||
|
||||
[Entity]
|
||||
PName=item_category
|
||||
LName=カテゴリテーブル
|
||||
Comment=
|
||||
TableOption=
|
||||
Page=Main
|
||||
Left=50
|
||||
Top=50
|
||||
Field="カテゴリID","category_id","int auto_increment","NOT NULL",0,"","",$FFFFFFFF,""
|
||||
Field="カテゴリ名","name","varchar(256)","NOT NULL",,"","",$FFFFFFFF,""
|
||||
Field="削除フラグ","is_del","char(1)","NOT NULL",,"\q0\q","0:未削除、1:削除済",$FFFFFFFF,""
|
||||
EffectMode=None
|
||||
Color=$000000
|
||||
BkColor=$FFFFFF
|
||||
Position="Main",50,50
|
||||
ZOrder=8
|
||||
|
||||
[Entity]
|
||||
PName=items
|
||||
LName=商品テーブル
|
||||
Comment=
|
||||
TableOption=
|
||||
Page=Main
|
||||
Left=350
|
||||
Top=50
|
||||
Field="商品ID","item_id","int auto_increment","NOT NULL",0,"","",$FFFFFFFF,""
|
||||
Field="商品名","name","varchar(255)","NOT NULL",,"","",$FFFFFFFF,""
|
||||
Field="価格","price","int","NOT NULL",,"","",$FFFFFFFF,""
|
||||
Field="カテゴリID","category_id","int",,,"","",$FFFFFFFF,""
|
||||
Field="販売有無","is_sale","char(1)","NOT NULL",,"\q1\q","1:販売中、0:販売無",$FFFFFFFF,""
|
||||
Field="削除フラグ","is_del","char(1)","NOT NULL",,"\q0\q","0:未削除、1:削除済",$FFFFFFFF,""
|
||||
Index=fk_categoryid=0,category_id
|
||||
EffectMode=None
|
||||
Color=$000000
|
||||
BkColor=$FFFFFF
|
||||
Position="Main",350,50
|
||||
ZOrder=7
|
||||
|
||||
[Entity]
|
||||
PName=order_items
|
||||
LName=注文商品テーブル
|
||||
Comment=
|
||||
TableOption=
|
||||
Page=Main
|
||||
Left=650
|
||||
Top=50
|
||||
Field="注文ID","order_id","int","NOT NULL",0,"","",$FFFFFFFF,""
|
||||
Field="商品ID","item_id","int","NOT NULL",1,"","",$FFFFFFFF,""
|
||||
Field="注文数","quantity","int",,,"","",$FFFFFFFF,""
|
||||
Index=fk_itemid=0,item_id
|
||||
EffectMode=None
|
||||
Color=$000000
|
||||
BkColor=$FFFFFF
|
||||
Position="Main",650,50
|
||||
ZOrder=6
|
||||
|
||||
[Entity]
|
||||
PName=orders
|
||||
LName=注文テーブル
|
||||
Comment=
|
||||
TableOption=
|
||||
Page=Main
|
||||
Left=950
|
||||
Top=50
|
||||
Field="注文ID","order_id","int auto_increment","NOT NULL",0,"","",$FFFFFFFF,""
|
||||
Field="ユーザID","user_id","int","NOT NULL",,"","",$FFFFFFFF,""
|
||||
Field="注文日時","order_time","datetime","NOT NULL",,"","",$FFFFFFFF,""
|
||||
Field="削除フラグ","is_del","char(1)","NOT NULL",,"\q0\q","0:未削除、1:削除済",$FFFFFFFF,""
|
||||
Index=fk_userid=0,user_id
|
||||
EffectMode=None
|
||||
Color=$000000
|
||||
BkColor=$FFFFFF
|
||||
Position="Main",950,50
|
||||
ZOrder=5
|
||||
|
||||
[Entity]
|
||||
PName=users
|
||||
LName=ユーザテーブル
|
||||
Comment=
|
||||
TableOption=
|
||||
Page=Main
|
||||
Left=1250
|
||||
Top=50
|
||||
Field="ユーザID","user_id","int auto_increment","NOT NULL",0,"","",$FFFFFFFF,""
|
||||
Field="ユーザ名","name","varchar(15)","NOT NULL",,"","",$FFFFFFFF,""
|
||||
Field="パスワード","password","varchar(50)","NOT NULL",,"","",$FFFFFFFF,""
|
||||
Field="年齢","age","int",,,"","",$FFFFFFFF,""
|
||||
Field="削除フラグ","is_del","char(1)","NOT NULL",,"\q0\q","0:未削除、1:削除済",$FFFFFFFF,""
|
||||
EffectMode=None
|
||||
Color=$000000
|
||||
BkColor=$FFFFFF
|
||||
Position="Main",1250,50
|
||||
ZOrder=4
|
||||
|
||||
[Relation]
|
||||
Entity1=items
|
||||
Entity2=order_items
|
||||
RelationType1=1
|
||||
RelationType2=3
|
||||
Fields1=item_id
|
||||
Fields2=item_id
|
||||
Cardinarity1=
|
||||
Cardinarity2=
|
||||
Position="MAIN",0,500,9500,500,R,R
|
||||
Dependence=1
|
||||
Caption=
|
||||
PName=
|
||||
LineMode=0
|
||||
Bar1=50
|
||||
Bar2=950
|
||||
Bar3=50
|
||||
TermPos1=R
|
||||
TermPos2=R
|
||||
ZOrder=1
|
||||
|
||||
[Relation]
|
||||
Entity1=users
|
||||
Entity2=orders
|
||||
RelationType1=1
|
||||
RelationType2=3
|
||||
Fields1=user_id
|
||||
Fields2=user_id
|
||||
Cardinarity1=
|
||||
Cardinarity2=
|
||||
Position="MAIN",0,500,9500,625,R,R
|
||||
Dependence=0
|
||||
Caption=
|
||||
PName=
|
||||
LineMode=0
|
||||
Bar1=50
|
||||
Bar2=950
|
||||
Bar3=62
|
||||
TermPos1=R
|
||||
TermPos2=R
|
||||
ZOrder=0
|
||||
|
||||
[Relation]
|
||||
Entity1=item_category
|
||||
Entity2=items
|
||||
RelationType1=1
|
||||
RelationType2=3
|
||||
Fields1=category_id
|
||||
Fields2=category_id
|
||||
Cardinarity1=
|
||||
Cardinarity2=
|
||||
Position="MAIN",0,500,9500,500,R,R
|
||||
Dependence=0
|
||||
Caption=
|
||||
PName=
|
||||
LineMode=0
|
||||
Bar1=50
|
||||
Bar2=950
|
||||
Bar3=50
|
||||
TermPos1=R
|
||||
TermPos2=R
|
||||
ZOrder=3
|
||||
|
||||
[Relation]
|
||||
Entity1=orders
|
||||
Entity2=order_items
|
||||
RelationType1=1
|
||||
RelationType2=3
|
||||
Fields1=order_id
|
||||
Fields2=order_id
|
||||
Cardinarity1=
|
||||
Cardinarity2=
|
||||
Position="MAIN",0,500,9500,667,R,R
|
||||
Dependence=1
|
||||
Caption=
|
||||
PName=
|
||||
LineMode=0
|
||||
Bar1=50
|
||||
Bar2=950
|
||||
Bar3=67
|
||||
TermPos1=R
|
||||
TermPos2=R
|
||||
ZOrder=2
|
||||
428
【練習問題】 SQL/Question2/【+α】MySQL_Questions2.html
Normal file
428
【練習問題】 SQL/Question2/【+α】MySQL_Questions2.html
Normal file
@@ -0,0 +1,428 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>【+α】MySQL_Questions2.md</title>
|
||||
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
|
||||
|
||||
<style>
|
||||
/*---------------------------------------------------------------------------------------------
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
body {
|
||||
font-family: "Segoe WPC", "Segoe UI", "SFUIText-Light", "HelveticaNeue-Light", sans-serif, "Droid Sans Fallback";
|
||||
font-size: 14px;
|
||||
padding: 0 12px;
|
||||
line-height: 22px;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
#code-csp-warning {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
right: 0;
|
||||
color: white;
|
||||
margin: 16px;
|
||||
text-align: center;
|
||||
font-size: 12px;
|
||||
font-family: sans-serif;
|
||||
background-color:#444444;
|
||||
cursor: pointer;
|
||||
padding: 6px;
|
||||
box-shadow: 1px 1px 1px rgba(0,0,0,.25);
|
||||
}
|
||||
|
||||
#code-csp-warning:hover {
|
||||
text-decoration: none;
|
||||
background-color:#007acc;
|
||||
box-shadow: 2px 2px 2px rgba(0,0,0,.25);
|
||||
}
|
||||
|
||||
|
||||
body.scrollBeyondLastLine {
|
||||
margin-bottom: calc(100vh - 22px);
|
||||
}
|
||||
|
||||
body.showEditorSelection .code-line {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
body.showEditorSelection .code-active-line:before,
|
||||
body.showEditorSelection .code-line:hover:before {
|
||||
content: "";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: -12px;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body.showEditorSelection li.code-active-line:before,
|
||||
body.showEditorSelection li.code-line:hover:before {
|
||||
left: -30px;
|
||||
}
|
||||
|
||||
.vscode-light.showEditorSelection .code-active-line:before {
|
||||
border-left: 3px solid rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
|
||||
.vscode-light.showEditorSelection .code-line:hover:before {
|
||||
border-left: 3px solid rgba(0, 0, 0, 0.40);
|
||||
}
|
||||
|
||||
.vscode-dark.showEditorSelection .code-active-line:before {
|
||||
border-left: 3px solid rgba(255, 255, 255, 0.4);
|
||||
}
|
||||
|
||||
.vscode-dark.showEditorSelection .code-line:hover:before {
|
||||
border-left: 3px solid rgba(255, 255, 255, 0.60);
|
||||
}
|
||||
|
||||
.vscode-high-contrast.showEditorSelection .code-active-line:before {
|
||||
border-left: 3px solid rgba(255, 160, 0, 0.7);
|
||||
}
|
||||
|
||||
.vscode-high-contrast.showEditorSelection .code-line:hover:before {
|
||||
border-left: 3px solid rgba(255, 160, 0, 1);
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 60%;
|
||||
max-height: 200px;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #4080D0;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:focus,
|
||||
input:focus,
|
||||
select:focus,
|
||||
textarea:focus {
|
||||
outline: 1px solid -webkit-focus-ring-color;
|
||||
outline-offset: -1px;
|
||||
}
|
||||
|
||||
hr {
|
||||
border: 0;
|
||||
height: 2px;
|
||||
border-bottom: 2px solid;
|
||||
}
|
||||
|
||||
h1 {
|
||||
padding-bottom: 0.3em;
|
||||
line-height: 1.2;
|
||||
border-bottom-width: 1px;
|
||||
border-bottom-style: solid;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
h1 code,
|
||||
h2 code,
|
||||
h3 code,
|
||||
h4 code,
|
||||
h5 code,
|
||||
h6 code {
|
||||
font-size: inherit;
|
||||
line-height: auto;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #4080D0;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
table > thead > tr > th {
|
||||
text-align: left;
|
||||
border-bottom: 1px solid;
|
||||
}
|
||||
|
||||
table > thead > tr > th,
|
||||
table > thead > tr > td,
|
||||
table > tbody > tr > th,
|
||||
table > tbody > tr > td {
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
table > tbody > tr + tr > td {
|
||||
border-top: 1px solid;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 0 7px 0 5px;
|
||||
padding: 0 16px 0 10px;
|
||||
border-left: 5px solid;
|
||||
}
|
||||
|
||||
code {
|
||||
font-family: Menlo, Monaco, Consolas, "Droid Sans Mono", "Courier New", monospace, "Droid Sans Fallback";
|
||||
font-size: 14px;
|
||||
line-height: 19px;
|
||||
}
|
||||
|
||||
body.wordWrap pre {
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
.mac code {
|
||||
font-size: 12px;
|
||||
line-height: 18px;
|
||||
}
|
||||
|
||||
pre:not(.hljs),
|
||||
pre.hljs code > div {
|
||||
padding: 16px;
|
||||
border-radius: 3px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/** Theming */
|
||||
|
||||
.vscode-light,
|
||||
.vscode-light pre code {
|
||||
color: rgb(30, 30, 30);
|
||||
}
|
||||
|
||||
.vscode-dark,
|
||||
.vscode-dark pre code {
|
||||
color: #DDD;
|
||||
}
|
||||
|
||||
.vscode-high-contrast,
|
||||
.vscode-high-contrast pre code {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.vscode-light code {
|
||||
color: #A31515;
|
||||
}
|
||||
|
||||
.vscode-dark code {
|
||||
color: #D7BA7D;
|
||||
}
|
||||
|
||||
.vscode-light pre:not(.hljs),
|
||||
.vscode-light code > div {
|
||||
background-color: rgba(220, 220, 220, 0.4);
|
||||
}
|
||||
|
||||
.vscode-dark pre:not(.hljs),
|
||||
.vscode-dark code > div {
|
||||
background-color: rgba(10, 10, 10, 0.4);
|
||||
}
|
||||
|
||||
.vscode-high-contrast pre:not(.hljs),
|
||||
.vscode-high-contrast code > div {
|
||||
background-color: rgb(0, 0, 0);
|
||||
}
|
||||
|
||||
.vscode-high-contrast h1 {
|
||||
border-color: rgb(0, 0, 0);
|
||||
}
|
||||
|
||||
.vscode-light table > thead > tr > th {
|
||||
border-color: rgba(0, 0, 0, 0.69);
|
||||
}
|
||||
|
||||
.vscode-dark table > thead > tr > th {
|
||||
border-color: rgba(255, 255, 255, 0.69);
|
||||
}
|
||||
|
||||
.vscode-light h1,
|
||||
.vscode-light hr,
|
||||
.vscode-light table > tbody > tr + tr > td {
|
||||
border-color: rgba(0, 0, 0, 0.18);
|
||||
}
|
||||
|
||||
.vscode-dark h1,
|
||||
.vscode-dark hr,
|
||||
.vscode-dark table > tbody > tr + tr > td {
|
||||
border-color: rgba(255, 255, 255, 0.18);
|
||||
}
|
||||
|
||||
.vscode-light blockquote,
|
||||
.vscode-dark blockquote {
|
||||
background: rgba(127, 127, 127, 0.1);
|
||||
border-color: rgba(0, 122, 204, 0.5);
|
||||
}
|
||||
|
||||
.vscode-high-contrast blockquote {
|
||||
background: transparent;
|
||||
border-color: #fff;
|
||||
}
|
||||
</style>
|
||||
|
||||
<style>
|
||||
/* Tomorrow Theme */
|
||||
/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */
|
||||
/* Original theme - https://github.com/chriskempson/tomorrow-theme */
|
||||
|
||||
/* Tomorrow Comment */
|
||||
.hljs-comment,
|
||||
.hljs-quote {
|
||||
color: #8e908c;
|
||||
}
|
||||
|
||||
/* Tomorrow Red */
|
||||
.hljs-variable,
|
||||
.hljs-template-variable,
|
||||
.hljs-tag,
|
||||
.hljs-name,
|
||||
.hljs-selector-id,
|
||||
.hljs-selector-class,
|
||||
.hljs-regexp,
|
||||
.hljs-deletion {
|
||||
color: #c82829;
|
||||
}
|
||||
|
||||
/* Tomorrow Orange */
|
||||
.hljs-number,
|
||||
.hljs-built_in,
|
||||
.hljs-builtin-name,
|
||||
.hljs-literal,
|
||||
.hljs-type,
|
||||
.hljs-params,
|
||||
.hljs-meta,
|
||||
.hljs-link {
|
||||
color: #f5871f;
|
||||
}
|
||||
|
||||
/* Tomorrow Yellow */
|
||||
.hljs-attribute {
|
||||
color: #eab700;
|
||||
}
|
||||
|
||||
/* Tomorrow Green */
|
||||
.hljs-string,
|
||||
.hljs-symbol,
|
||||
.hljs-bullet,
|
||||
.hljs-addition {
|
||||
color: #718c00;
|
||||
}
|
||||
|
||||
/* Tomorrow Blue */
|
||||
.hljs-title,
|
||||
.hljs-section {
|
||||
color: #4271ae;
|
||||
}
|
||||
|
||||
/* Tomorrow Purple */
|
||||
.hljs-keyword,
|
||||
.hljs-selector-tag {
|
||||
color: #8959a8;
|
||||
}
|
||||
|
||||
.hljs {
|
||||
display: block;
|
||||
overflow-x: auto;
|
||||
color: #4d4d4c;
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
.hljs-emphasis {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.hljs-strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
</style>
|
||||
|
||||
<style>
|
||||
/*
|
||||
* Markdown PDF CSS
|
||||
*/
|
||||
|
||||
body {
|
||||
font-family: "Meiryo", "Segoe WPC", "Segoe UI", "SFUIText-Light", "HelveticaNeue-Light", sans-serif, "Droid Sans Fallback";
|
||||
}
|
||||
|
||||
pre {
|
||||
background-color: #f8f8f8;
|
||||
border: 1px solid #cccccc;
|
||||
border-radius: 3px;
|
||||
overflow-x: auto;
|
||||
white-space: pre-wrap;
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
|
||||
pre:not(.hljs) {
|
||||
padding: 23px;
|
||||
line-height: 19px;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
background: rgba(127, 127, 127, 0.1);
|
||||
border-color: rgba(0, 122, 204, 0.5);
|
||||
}
|
||||
|
||||
.emoji {
|
||||
height: 1.4em;
|
||||
}
|
||||
|
||||
/* for inline code */
|
||||
:not(pre):not(.hljs) > code {
|
||||
color: #C9AE75; /* Change the old color so it seems less like an error */
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
/* Page Break : use <div class="page"/> to insert page break
|
||||
-------------------------------------------------------- */
|
||||
.page {
|
||||
page-break-after: always;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<h1>MySQL SQL問題集 part2+α</h1>
|
||||
<p><strong>前提条件</strong>
|
||||
SQLフォルダにあるSQLファイルの内容をすべて実行していること</p>
|
||||
<h2><strong>問1 SELECT文作成</strong></h2>
|
||||
<p>商品一覧を表示</p>
|
||||
<p><img src="../img/question2/+α/図1.png" alt="図1"></p>
|
||||
<h2><strong>問2 SELECT文作成</strong></h2>
|
||||
<p>注文一覧を表示</p>
|
||||
<p><img src="../img/question2/+α/図2.png" alt="図2"></p>
|
||||
<h2><strong>問3 SELECT文作成</strong></h2>
|
||||
<p>各注文毎の合計額を表示</p>
|
||||
<p><img src="../img/question2/+α/図3.png" alt="図3"></p>
|
||||
<h2><strong>問4 SELECT文作成</strong></h2>
|
||||
<p>月別注文数を表示</p>
|
||||
<p><img src="../img/question2/+α/図4.png" alt="図4"></p>
|
||||
<h2><strong>問5 SELECT文作成</strong></h2>
|
||||
<p>年別注文数を表示</p>
|
||||
<p><img src="../img/question2/+α/図5.png" alt="図5"></p>
|
||||
<h2><strong>問6 SELECT文作成</strong></h2>
|
||||
<p>全体の売上を表示</p>
|
||||
<p><img src="../img/question2/+α/図6.png" alt="図8"></p>
|
||||
<h2><strong>問7 SELECT文作成</strong></h2>
|
||||
<p>カテゴリ別売上額を表示</p>
|
||||
<p><img src="../img/question2/+α/図7.png" alt="図7"></p>
|
||||
<h2><strong>問8 SELECT文作成</strong></h2>
|
||||
<p>商品別売上額を表示</p>
|
||||
<p><img src="../img/question2/+α/図8.png" alt="図6"></p>
|
||||
<h2><strong>問9 SELECT文作成</strong></h2>
|
||||
<p>各カテゴリの構成比を表示</p>
|
||||
<pre class="hljs"><code><div>※構成比
|
||||
ある項目が全体に対してどれぐらい占めているかの割合です。
|
||||
|
||||
計算式:カテゴリー合計額 ÷ 全体の売上高
|
||||
</div></code></pre>
|
||||
<p><img src="../img/question2/+α/図9.png" alt="図9"></p>
|
||||
<h2><strong>問10 SELECT文作成</strong></h2>
|
||||
<p>各商品別の構成比を表示</p>
|
||||
<p><img src="../img/question2/+α/図10.png" alt="図10"></p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
114
【練習問題】 SQL/Question2/【+α】SQL/MySQL_question2.sql
Normal file
114
【練習問題】 SQL/Question2/【+α】SQL/MySQL_question2.sql
Normal file
@@ -0,0 +1,114 @@
|
||||
DROP TABLE IF EXISTS order_items;
|
||||
DROP TABLE IF EXISTS orders;
|
||||
DROP TABLE IF EXISTS items;
|
||||
DROP TABLE IF EXISTS item_category;
|
||||
DROP TABLE IF EXISTS users;
|
||||
|
||||
CREATE TABLE users(
|
||||
user_id INT PRIMARY KEY AUTO_INCREMENT COMMENT 'ユーザID'
|
||||
, name VARCHAR (15) NOT NULL COMMENT 'ユーザ名'
|
||||
, password VARCHAR (50) NOT NULL COMMENT 'パスワード'
|
||||
, age INT COMMENT '年齢'
|
||||
, is_del CHAR (1) NOT NULL DEFAULT '0' COMMENT '削除フラグ:0:未削除、1:削除済'
|
||||
)
|
||||
default charset=utf8
|
||||
COMMENT 'ユーザテーブル';
|
||||
|
||||
CREATE TABLE item_category(
|
||||
category_id INT AUTO_INCREMENT PRIMARY KEY COMMENT 'カテゴリID'
|
||||
, name VARCHAR (256) NOT NULL COMMENT 'カテゴリ名'
|
||||
, is_del CHAR (1) NOT NULL DEFAULT '0' COMMENT '削除フラグ:0:未削除、1:削除済'
|
||||
)
|
||||
default charset=utf8
|
||||
COMMENT 'カテゴリテーブル';
|
||||
|
||||
CREATE TABLE items(
|
||||
item_id INT PRIMARY KEY AUTO_INCREMENT COMMENT '商品ID'
|
||||
, name VARCHAR (255) NOT NULL COMMENT '商品名'
|
||||
, price INT NOT NULL COMMENT '価格'
|
||||
, category_id INT COMMENT 'カテゴリID'
|
||||
, is_sale CHAR (1) NOT NULL DEFAULT '1' COMMENT '販売有無:1:販売中、0:販売無'
|
||||
, is_del CHAR (1) NOT NULL DEFAULT '0' COMMENT '削除フラグ:0:未削除、1:削除済'
|
||||
, FOREIGN KEY fk_categoryid(category_id) REFERENCES item_category(category_id)
|
||||
)
|
||||
default charset=utf8
|
||||
COMMENT '商品テーブル';
|
||||
|
||||
CREATE TABLE orders(
|
||||
order_id INT PRIMARY KEY AUTO_INCREMENT COMMENT '注文ID'
|
||||
, user_id INT NOT NULL COMMENT 'ユーザID'
|
||||
, order_time DATETIME NOT NULL COMMENT '注文日時'
|
||||
, is_del CHAR (1) NOT NULL DEFAULT '0' COMMENT '削除フラグ:0:未削除、1:削除済'
|
||||
, FOREIGN KEY fk_userid(user_id) REFERENCES users(user_id)
|
||||
)
|
||||
default charset=utf8
|
||||
COMMENT '注文テーブル';
|
||||
|
||||
CREATE TABLE order_items(
|
||||
order_id INT COMMENT '注文ID'
|
||||
, item_id INT COMMENT '商品ID'
|
||||
, quantity INT COMMENT '注文数'
|
||||
, PRIMARY KEY (order_id, item_id)
|
||||
, FOREIGN KEY fk_orderid(order_id) REFERENCES orders(order_id)
|
||||
, FOREIGN KEY fk_itemid(item_id) REFERENCES items(item_id)
|
||||
)
|
||||
default charset=utf8
|
||||
COMMENT '注文商品テーブル';
|
||||
|
||||
|
||||
INSERT INTO users (name, password, age) VALUES ('三浦知一','KfCQDjiZ', 53);
|
||||
INSERT INTO users (name, password, age) VALUES ('遠藤保','V3mngzMP', 40);
|
||||
INSERT INTO users (name, password, age) VALUES ('柴崎学','XktKCvCx', 27);
|
||||
INSERT INTO users (name, password, age) VALUES ('本田啓介','bSCebKnP', 33);
|
||||
INSERT INTO users (name, password, age) VALUES ('花川真司','xKetmAcH', 30);
|
||||
|
||||
INSERT INTO item_category (name) VALUES ('家具');
|
||||
INSERT INTO item_category (name) VALUES ('飲料');
|
||||
INSERT INTO item_category (name) VALUES ('食品');
|
||||
|
||||
INSERT INTO items (name, price, category_id) VALUES ('ローマのテーブル', 150000, 1);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('げーたるーど2000 500ml', 370, 2);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('原始肉', 2500, 3);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('魅惑の椅子', 100000, 1);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('十八茶 600ml', 110, 1);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('いい匂いのするドリアン', 5000, 3);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('太平洋の水 550ml', 300, 2);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('ひたすら膨らむガム', 200, 3);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('人をだめにするソファー', 10000, 1);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('人を虜にする名酒', 20000, 2);
|
||||
INSERT INTO items (name, price, category_id) VALUES ('新鮮キャベツ', 1000, 3);
|
||||
|
||||
INSERT INTO orders (user_id, order_time) VALUES (1, '2015-02-22 12:00:00');
|
||||
INSERT INTO orders (user_id, order_time) VALUES (4, '2015-12-01 15:30:00');
|
||||
INSERT INTO orders (user_id, order_time) VALUES (3, '2018-03-20 18:45:00');
|
||||
INSERT INTO orders (user_id, order_time) VALUES (2, '2018-05-11 11:28:00');
|
||||
INSERT INTO orders (user_id, order_time) VALUES (5, '2018-09-30 10:50:00');
|
||||
INSERT INTO orders (user_id, order_time) VALUES (1, '2018-09-12 20:13:00');
|
||||
INSERT INTO orders (user_id, order_time) VALUES (4, '2018-09-15 21:34:00');
|
||||
INSERT INTO orders (user_id, order_time) VALUES (1, '2019-05-06 16:00:00');
|
||||
INSERT INTO orders (user_id, order_time) VALUES (3, '2019-12-20 10:39:00');
|
||||
INSERT INTO orders (user_id, order_time) VALUES (2, '2020-01-01 14:11:00');
|
||||
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (1, 2, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (1, 6, 10);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (1, 7, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (1, 11, 10);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (2, 4, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (3, 9, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (4, 7, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (4, 8, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 2, 7);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 3, 5);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 10, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 11, 5);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 5, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 7, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (6, 8, 10);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (7, 4, 2);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (8, 1, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (8, 9, 1);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (9, 3, 4);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (9, 5, 2);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (9, 8, 10);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (10, 1, 2);
|
||||
INSERT INTO order_items (order_id, item_id, quantity) VALUES (10, 10, 2);
|
||||
Reference in New Issue
Block a user