落書きノート

ふと自分が気になった事を書いてます

PostgreSQLで問題を解く

oracleoit=> select cust_name
oracleoit-> from customer, slip
oracleoit-> where customer.cust_id = slip.cust_id
oracleoit-> and slip.slip_id = 8;
 cust_name  
------------
 西日本商会
(1 row)

oracleoit=> select cust_name
oracleoit-> from customer natural join slip
oracleoit-> where slip_id = 8;
 cust_name  
------------
 西日本商会
(1 row)

oracleoit=> select cust_name
oracleoit-> from slip natural join customer
oracleoit-> where slip_id = 8;
 cust_name  
------------
 西日本商会
(1 row)

oracleoit=> select cust_name
oracleoit-> from customer join slip using (cust_id)
oracleoit-> where slip_id = 8;
 cust_name  
------------
 西日本商会
(1 row)

oracleoit=> select cust_name
oracleoit-> from customer join slip on (customer.cust_id = slip.cust_id)
oracleoit-> where slip_id = 8;
 cust_name  
------------
 西日本商会
(1 row)

oracleoit=> select * from customer, slip;
 cust_id |  cust_name   |        address         | slip_id | cust_id |      slip_date      
---------+--------------+------------------------+---------+---------+---------------------
       1 | 古千谷商店   | 東京都足立区古千谷本町 |       1 |       2 | 1995-06-19 00:00:00
       2 | 千代田商事   | 東京都千代田区大手町   |       1 |       2 | 1995-06-19 00:00:00
       3 | 竹の塚マート | 東京都足立区竹の塚     |       1 |       2 | 1995-06-19 00:00:00
       4 | 竹里屋       | 埼玉県春日部市竹里     |       1 |       2 | 1995-06-19 00:00:00
       5 | 西日本商会   | 大阪府大阪市西区北堀江 |       1 |       2 | 1995-06-19 00:00:00
       1 | 古千谷商店   | 東京都足立区古千谷本町 |       2 |       5 | 1995-06-23 00:00:00
       2 | 千代田商事   | 東京都千代田区大手町   |       2 |       5 | 1995-06-23 00:00:00
       3 | 竹の塚マート | 東京都足立区竹の塚     |       2 |       5 | 1995-06-23 00:00:00
       4 | 竹里屋       | 埼玉県春日部市竹里     |       2 |       5 | 1995-06-23 00:00:00
       5 | 西日本商会   | 大阪府大阪市西区北堀江 |       2 |       5 | 1995-06-23 00:00:00
       1 | 古千谷商店   | 東京都足立区古千谷本町 |       3 |       4 | 1995-06-23 00:00:00
       2 | 千代田商事   | 東京都千代田区大手町   |       3 |       4 | 1995-06-23 00:00:00
       3 | 竹の塚マート | 東京都足立区竹の塚     |       3 |       4 | 1995-06-23 00:00:00
       4 | 竹里屋       | 埼玉県春日部市竹里     |       3 |       4 | 1995-06-23 00:00:00
       5 | 西日本商会   | 大阪府大阪市西区北堀江 |       3 |       4 | 1995-06-23 00:00:00
       1 | 古千谷商店   | 東京都足立区古千谷本町 |       4 |       2 | 1995-06-26 00:00:00
       2 | 千代田商事   | 東京都千代田区大手町   |       4 |       2 | 1995-06-26 00:00:00
       3 | 竹の塚マート | 東京都足立区竹の塚     |       4 |       2 | 1995-06-26 00:00:00
       4 | 竹里屋       | 埼玉県春日部市竹里     |       4 |       2 | 1995-06-26 00:00:00
       5 | 西日本商会   | 大阪府大阪市西区北堀江 |       4 |       2 | 1995-06-26 00:00:00
       1 | 古千谷商店   | 東京都足立区古千谷本町 |       5 |       3 | 1995-06-29 00:00:00
       2 | 千代田商事   | 東京都千代田区大手町   |       5 |       3 | 1995-06-29 00:00:00
       3 | 竹の塚マート | 東京都足立区竹の塚     |       5 |       3 | 1995-06-29 00:00:00
       4 | 竹里屋       | 埼玉県春日部市竹里     |       5 |       3 | 1995-06-29 00:00:00
       5 | 西日本商会   | 大阪府大阪市西区北堀江 |       5 |       3 | 1995-06-29 00:00:00
       1 | 古千谷商店   | 東京都足立区古千谷本町 |       6 |       2 | 1995-07-03 00:00:00
       2 | 千代田商事   | 東京都千代田区大手町   |       6 |       2 | 1995-07-03 00:00:00
       3 | 竹の塚マート | 東京都足立区竹の塚     |       6 |       2 | 1995-07-03 00:00:00
       4 | 竹里屋       | 埼玉県春日部市竹里     |       6 |       2 | 1995-07-03 00:00:00
       5 | 西日本商会   | 大阪府大阪市西区北堀江 |       6 |       2 | 1995-07-03 00:00:00
       1 | 古千谷商店   | 東京都足立区古千谷本町 |       7 |       1 | 1995-07-03 00:00:00
       2 | 千代田商事   | 東京都千代田区大手町   |       7 |       1 | 1995-07-03 00:00:00
       3 | 竹の塚マート | 東京都足立区竹の塚     |       7 |       1 | 1995-07-03 00:00:00
       4 | 竹里屋       | 埼玉県春日部市竹里     |       7 |       1 | 1995-07-03 00:00:00
       5 | 西日本商会   | 大阪府大阪市西区北堀江 |       7 |       1 | 1995-07-03 00:00:00
       1 | 古千谷商店   | 東京都足立区古千谷本町 |       8 |       5 | 1995-07-07 00:00:00
       2 | 千代田商事   | 東京都千代田区大手町   |       8 |       5 | 1995-07-07 00:00:00
       3 | 竹の塚マート | 東京都足立区竹の塚     |       8 |       5 | 1995-07-07 00:00:00
       4 | 竹里屋       | 埼玉県春日部市竹里     |       8 |       5 | 1995-07-07 00:00:00
       5 | 西日本商会   | 大阪府大阪市西区北堀江 |       8 |       5 | 1995-07-07 00:00:00
(40 rows)

oracleoit=> select cust_name, goods_name
oracleoit-> from customer, goods
oracleoit-> where customer.cust_id = goods.goods_id;
  cust_name   | goods_name 
--------------+------------
 古千谷商店   | 片手鍋
 千代田商事   | 両手鍋
 竹の塚マート | 中華鍋
 竹里屋       | フライパン
(4 rows)

oracleoit=> select slip_date 受注日付,
oracleoit-> cust_name 顧客名,
oracleoit-> goods_name 商品名,
oracleoit-> qty 数量
oracleoit-> from customer, goods, slip, account
oracleoit-> where customer.cust_id = slip.cust_id
oracleoit-> and goods.goods_id = account.goods_id
oracleoit-> and slip.slip_id = account.slip_id
oracleoit-> order by slip_date;
      受注日付       |    顧客名    |   商品名   | 数量 
---------------------+--------------+------------+------
 1995-06-19 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-06-19 00:00:00 | 千代田商事   | 中華鍋     |    5
 1995-06-19 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-06-23 00:00:00 | 西日本商会   | 片手鍋     |   20
 1995-06-23 00:00:00 | 竹里屋       | 中華鍋     |    5
 1995-06-23 00:00:00 | 竹里屋       | フライパン |    5
 1995-06-26 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-06-26 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-06-29 00:00:00 | 竹の塚マート | 中華鍋     |    7
 1995-07-03 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-07-03 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-07-03 00:00:00 | 千代田商事   | 中華鍋     |    5
 1995-07-03 00:00:00 | 千代田商事   | フライパン |    5
 1995-07-03 00:00:00 | 古千谷商店   | 片手鍋     |    8
 1995-07-03 00:00:00 | 古千谷商店   | 両手鍋     |    5
 1995-07-07 00:00:00 | 西日本商会   | 片手鍋     |   20
(16 rows)

oracleoit=> select slip_date 受注日付,
oracleoit-> cust_name 顧客名,
oracleoit-> goods_name 商品名,
oracleoit-> qty 数量
oracleoit-> from customer
oracleoit-> join slip on customer.cust_id = slip.cust_id
oracleoit-> join account on slip.slip_id = account.slip_id
oracleoit-> join goods on account.goods_id = goods.goods_id
oracleoit-> order by slip_date;
      受注日付       |    顧客名    |   商品名   | 数量 
---------------------+--------------+------------+------
 1995-06-19 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-06-19 00:00:00 | 千代田商事   | 中華鍋     |    5
 1995-06-19 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-06-23 00:00:00 | 西日本商会   | 片手鍋     |   20
 1995-06-23 00:00:00 | 竹里屋       | 中華鍋     |    5
 1995-06-23 00:00:00 | 竹里屋       | フライパン |    5
 1995-06-26 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-06-26 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-06-29 00:00:00 | 竹の塚マート | 中華鍋     |    7
 1995-07-03 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-07-03 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-07-03 00:00:00 | 千代田商事   | 中華鍋     |    5
 1995-07-03 00:00:00 | 千代田商事   | フライパン |    5
 1995-07-03 00:00:00 | 古千谷商店   | 片手鍋     |    8
 1995-07-03 00:00:00 | 古千谷商店   | 両手鍋     |    5
 1995-07-07 00:00:00 | 西日本商会   | 片手鍋     |   20
(16 rows)

oracleoit=> select slip_date 受注日付,
oracleoit-> cust_name 顧客名,
oracleoit-> goods_name 商品名,
oracleoit-> qty 数量
oracleoit-> from customer
oracleoit-> join slip using(cust_id)
oracleoit-> join account using(slip_id)
oracleoit-> join goods using(goods_id)
oracleoit-> order by slip_date;
      受注日付       |    顧客名    |   商品名   | 数量 
---------------------+--------------+------------+------
 1995-06-19 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-06-19 00:00:00 | 千代田商事   | 中華鍋     |    5
 1995-06-19 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-06-23 00:00:00 | 西日本商会   | 片手鍋     |   20
 1995-06-23 00:00:00 | 竹里屋       | 中華鍋     |    5
 1995-06-23 00:00:00 | 竹里屋       | フライパン |    5
 1995-06-26 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-06-26 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-06-29 00:00:00 | 竹の塚マート | 中華鍋     |    7
 1995-07-03 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-07-03 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-07-03 00:00:00 | 千代田商事   | 中華鍋     |    5
 1995-07-03 00:00:00 | 千代田商事   | フライパン |    5
 1995-07-03 00:00:00 | 古千谷商店   | 片手鍋     |    8
 1995-07-03 00:00:00 | 古千谷商店   | 両手鍋     |    5
 1995-07-07 00:00:00 | 西日本商会   | 片手鍋     |   20
(16 rows)

oracleoit=> select slip_date 受注日付,
oracleoit-> cust_name 顧客名,
oracleoit-> goods_name 商品名,
oracleoit-> qty 数量
oracleoit-> from customer
oracleoit-> natural join slip
oracleoit-> natural join account
oracleoit-> natural join goods
oracleoit-> order by slip_date;
      受注日付       |    顧客名    |   商品名   | 数量 
---------------------+--------------+------------+------
 1995-06-19 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-06-19 00:00:00 | 千代田商事   | 中華鍋     |    5
 1995-06-19 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-06-23 00:00:00 | 西日本商会   | 片手鍋     |   20
 1995-06-23 00:00:00 | 竹里屋       | 中華鍋     |    5
 1995-06-23 00:00:00 | 竹里屋       | フライパン |    5
 1995-06-26 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-06-26 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-06-29 00:00:00 | 竹の塚マート | 中華鍋     |    7
 1995-07-03 00:00:00 | 千代田商事   | 片手鍋     |   15
 1995-07-03 00:00:00 | 千代田商事   | 両手鍋     |   10
 1995-07-03 00:00:00 | 千代田商事   | 中華鍋     |    5
 1995-07-03 00:00:00 | 千代田商事   | フライパン |    5
 1995-07-03 00:00:00 | 古千谷商店   | 片手鍋     |    8
 1995-07-03 00:00:00 | 古千谷商店   | 両手鍋     |    5
 1995-07-07 00:00:00 | 西日本商会   | 片手鍋     |   20
(16 rows)

oracleoit=> select slip_date 受注日付,
oracleoit-> cust_name 顧客名,
oracleoit-> goods_name 商品名,
oracleoit-> qty*unit_price 受注額
oracleoit-> from customer, goods, slip, account
oracleoit-> where customer.cust_id = slip.cust_id
oracleoit-> and goods.goods_id = account.goods_id
oracleoit-> and slip.slip_id = account.slip_id
oracleoit-> order by slip_date;
      受注日付       |    顧客名    |   商品名   | 受注額 
---------------------+--------------+------------+--------
 1995-06-19 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-06-19 00:00:00 | 千代田商事   | 中華鍋     |   9000
 1995-06-19 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-06-23 00:00:00 | 西日本商会   | 片手鍋     |  10000
 1995-06-23 00:00:00 | 竹里屋       | 中華鍋     |   9000
 1995-06-23 00:00:00 | 竹里屋       | フライパン |   7500
 1995-06-26 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-06-26 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-06-29 00:00:00 | 竹の塚マート | 中華鍋     |  12600
 1995-07-03 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-07-03 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-07-03 00:00:00 | 千代田商事   | 中華鍋     |   9000
 1995-07-03 00:00:00 | 千代田商事   | フライパン |   7500
 1995-07-03 00:00:00 | 古千谷商店   | 片手鍋     |   4000
 1995-07-03 00:00:00 | 古千谷商店   | 両手鍋     |   4000
 1995-07-07 00:00:00 | 西日本商会   | 片手鍋     |  10000
(16 rows)

oracleoit=> select slip_date 受注日付,
oracleoit-> cust_name 顧客名,
oracleoit-> goods_name 商品名,
oracleoit-> qty*unit_price 受注額
oracleoit-> from customer
oracleoit-> join slip on customer.cust_id = slip.cust_id
oracleoit-> join account on slip.slip_id = account.slip_id
oracleoit-> join goods on account.goods_id = goods.goods_id
oracleoit-> order by slip_date;
      受注日付       |    顧客名    |   商品名   | 受注額 
---------------------+--------------+------------+--------
 1995-06-19 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-06-19 00:00:00 | 千代田商事   | 中華鍋     |   9000
 1995-06-19 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-06-23 00:00:00 | 西日本商会   | 片手鍋     |  10000
 1995-06-23 00:00:00 | 竹里屋       | 中華鍋     |   9000
 1995-06-23 00:00:00 | 竹里屋       | フライパン |   7500
 1995-06-26 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-06-26 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-06-29 00:00:00 | 竹の塚マート | 中華鍋     |  12600
 1995-07-03 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-07-03 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-07-03 00:00:00 | 千代田商事   | 中華鍋     |   9000
 1995-07-03 00:00:00 | 千代田商事   | フライパン |   7500
 1995-07-03 00:00:00 | 古千谷商店   | 片手鍋     |   4000
 1995-07-03 00:00:00 | 古千谷商店   | 両手鍋     |   4000
 1995-07-07 00:00:00 | 西日本商会   | 片手鍋     |  10000
(16 rows)

oracleoit=> select slip_date 受注日付,
oracleoit-> cust_name 顧客名,
oracleoit-> goods_name 商品名,
oracleoit-> qty*unit_price 受注額
oracleoit-> from customer
oracleoit-> join slip using(cust_id)
oracleoit-> join account using(slip_id)
oracleoit-> join goods using(goods_id)
oracleoit-> order by slip_date;
      受注日付       |    顧客名    |   商品名   | 受注額 
---------------------+--------------+------------+--------
 1995-06-19 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-06-19 00:00:00 | 千代田商事   | 中華鍋     |   9000
 1995-06-19 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-06-23 00:00:00 | 西日本商会   | 片手鍋     |  10000
 1995-06-23 00:00:00 | 竹里屋       | 中華鍋     |   9000
 1995-06-23 00:00:00 | 竹里屋       | フライパン |   7500
 1995-06-26 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-06-26 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-06-29 00:00:00 | 竹の塚マート | 中華鍋     |  12600
 1995-07-03 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-07-03 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-07-03 00:00:00 | 千代田商事   | 中華鍋     |   9000
 1995-07-03 00:00:00 | 千代田商事   | フライパン |   7500
 1995-07-03 00:00:00 | 古千谷商店   | 片手鍋     |   4000
 1995-07-03 00:00:00 | 古千谷商店   | 両手鍋     |   4000
 1995-07-07 00:00:00 | 西日本商会   | 片手鍋     |  10000
(16 rows)

oracleoit=> select slip_date 受注日付,
oracleoit-> cust_name 顧客名,
oracleoit-> goods_name 商品名,
oracleoit-> qty*unit_price 受注額
oracleoit-> from customer
oracleoit-> natural join slip
oracleoit-> natural join account
oracleoit-> natural join goods
oracleoit-> order by slip_date;
      受注日付       |    顧客名    |   商品名   | 受注額 
---------------------+--------------+------------+--------
 1995-06-19 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-06-19 00:00:00 | 千代田商事   | 中華鍋     |   9000
 1995-06-19 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-06-23 00:00:00 | 西日本商会   | 片手鍋     |  10000
 1995-06-23 00:00:00 | 竹里屋       | 中華鍋     |   9000
 1995-06-23 00:00:00 | 竹里屋       | フライパン |   7500
 1995-06-26 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-06-26 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-06-29 00:00:00 | 竹の塚マート | 中華鍋     |  12600
 1995-07-03 00:00:00 | 千代田商事   | 片手鍋     |   7500
 1995-07-03 00:00:00 | 千代田商事   | 両手鍋     |   8000
 1995-07-03 00:00:00 | 千代田商事   | 中華鍋     |   9000
 1995-07-03 00:00:00 | 千代田商事   | フライパン |   7500
 1995-07-03 00:00:00 | 古千谷商店   | 片手鍋     |   4000
 1995-07-03 00:00:00 | 古千谷商店   | 両手鍋     |   4000
 1995-07-07 00:00:00 | 西日本商会   | 片手鍋     |  10000
(16 rows)

oracleoit=> select slip.slip_id 伝票番号,
oracleoit-> sum(qty*unit_price) 受注額
oracleoit-> from goods, slip, account
oracleoit-> where goods.goods_id = account.goods_id
oracleoit-> and slip.slip_id = account.slip_id
oracleoit-> group by slip.slip_id;
 伝票番号 | 受注額 
----------+--------
        8 |  10000
        6 |  32000
        7 |   8000
        2 |  10000
        5 |  12600
        4 |  15500
        1 |  24500
        3 |  16500
(8 rows)

oracleoit=> select slip_id 伝票番号,
oracleoit-> sum(qty*unit_price) 受注額
oracleoit-> from slip
oracleoit-> natural join account
oracleoit-> natural join goods
oracleoit-> group by slip_id;
 伝票番号 | 受注額 
----------+--------
        8 |  10000
        6 |  32000
        7 |   8000
        2 |  10000
        5 |  12600
        4 |  15500
        1 |  24500
        3 |  16500
(8 rows)

oracleoit=> select slip_id 伝票番号,
oracleoit-> sum(qty*unit_price) 受注額
oracleoit-> from slip
oracleoit-> join account using(slip_id)
oracleoit-> join goods using(goods_id)
oracleoit-> group by slip_id;
 伝票番号 | 受注額 
----------+--------
        8 |  10000
        6 |  32000
        7 |   8000
        2 |  10000
        5 |  12600
        4 |  15500
        1 |  24500
        3 |  16500
(8 rows)

oracleoit=> select cust_name 顧客名,
oracleoit-> sum(qty*unit_price) 受注額
oracleoit-> from customer, goods, slip, account
oracleoit-> where customer.cust_id = slip.cust_id
oracleoit-> and goods.goods_id = account.goods_id
oracleoit-> and slip.slip_id = account.slip_id
oracleoit-> group by customer.cust_name;
    顧客名    | 受注額 
--------------+--------
 千代田商事   |  72000
 竹里屋       |  16500
 竹の塚マート |  12600
 西日本商会   |  20000
 古千谷商店   |   8000

oracleoit=> select cust_name 顧客名,
oracleoit-> sum(qty*unit_price) 受注額
oracleoit-> from customer
oracleoit-> join slip on customer.cust_id = slip.cust_id
oracleoit-> join account on slip.slip_id = account.slip_id
oracleoit-> join goods on account.goods_id = goods.goods_id
oracleoit-> group by customer.cust_name;
    顧客名    | 受注額 
--------------+--------
 千代田商事   |  72000
 竹里屋       |  16500
 竹の塚マート |  12600
 西日本商会   |  20000
 古千谷商店   |   8000
(5 rows)

oracleoit=> select cust_name 顧客名,
oracleoit-> sum(qty*unit_price) 受注額
oracleoit-> from customer
oracleoit-> join slip using(cust_id)
oracleoit-> join account using(slip_id)
oracleoit-> join goods using(goods_id)
oracleoit-> group by cust_name;
    顧客名    | 受注額 
--------------+--------
 千代田商事   |  72000
 竹里屋       |  16500
 竹の塚マート |  12600
 西日本商会   |  20000
 古千谷商店   |   8000
(5 rows)

oracleoit=> select cust_name 顧客名,
oracleoit-> sum(qty*unit_price) 受注額
oracleoit-> from customer
oracleoit-> natural join slip
oracleoit-> natural join account
oracleoit-> natural join goods
oracleoit-> group by cust_name;
    顧客名    | 受注額 
--------------+--------
 千代田商事   |  72000
 竹里屋       |  16500
 竹の塚マート |  12600
 西日本商会   |  20000
 古千谷商店   |   8000
(5 rows)

oracleoit=> select * from slip
oracleoit-> natural join customer;
 cust_id | slip_id |      slip_date      |  cust_name   |        address         
---------+---------+---------------------+--------------+------------------------
       2 |       1 | 1995-06-19 00:00:00 | 千代田商事   | 東京都千代田区大手町
       5 |       2 | 1995-06-23 00:00:00 | 西日本商会   | 大阪府大阪市西区北堀江
       4 |       3 | 1995-06-23 00:00:00 | 竹里屋       | 埼玉県春日部市竹里
       2 |       4 | 1995-06-26 00:00:00 | 千代田商事   | 東京都千代田区大手町
       3 |       5 | 1995-06-29 00:00:00 | 竹の塚マート | 東京都足立区竹の塚
       2 |       6 | 1995-07-03 00:00:00 | 千代田商事   | 東京都千代田区大手町
       1 |       7 | 1995-07-03 00:00:00 | 古千谷商店   | 東京都足立区古千谷本町
       5 |       8 | 1995-07-07 00:00:00 | 西日本商会   | 大阪府大阪市西区北堀江
(8 rows)

oracleoit=> select * from slip,customer
oracleoit-> where customer.cust_id = slip.cust_id;
 slip_id | cust_id |      slip_date      | cust_id |  cust_name   |        address         
---------+---------+---------------------+---------+--------------+------------------------
       1 |       2 | 1995-06-19 00:00:00 |       2 | 千代田商事   | 東京都千代田区大手町
       2 |       5 | 1995-06-23 00:00:00 |       5 | 西日本商会   | 大阪府大阪市西区北堀江
       3 |       4 | 1995-06-23 00:00:00 |       4 | 竹里屋       | 埼玉県春日部市竹里
       4 |       2 | 1995-06-26 00:00:00 |       2 | 千代田商事   | 東京都千代田区大手町
       5 |       3 | 1995-06-29 00:00:00 |       3 | 竹の塚マート | 東京都足立区竹の塚
       6 |       2 | 1995-07-03 00:00:00 |       2 | 千代田商事   | 東京都千代田区大手町
       7 |       1 | 1995-07-03 00:00:00 |       1 | 古千谷商店   | 東京都足立区古千谷本町
       8 |       5 | 1995-07-07 00:00:00 |       5 | 西日本商会   | 大阪府大阪市西区北堀江
(8 rows)

oracleoit=> select cust_id from slip
oracleoit-> natural join customer;
 cust_id 
---------
       2
       5
       4
       2
       3
       2
       1
       5
(8 rows)

oracleoit=> select customer.cust_id from slip, customer
oracleoit-> where customer.cust_id = slip.cust_id;
 cust_id 
---------
       2
       5
       4
       2
       3
       2
       1
       5
(8 rows)

oracleoit=> select slip.cust_id from slip, customer
oracleoit-> where customer.cust_id = slip.cust_id;
 cust_id 
---------
       2
       5
       4
       2
       3
       2
       1
       5
(8 rows)

oracleoit=> select *
oracleoit-> from dept natural join emp;
 deptno |   dname    |   loc    | empno | ename  |    job    | mgr  |      hiredate       | sal  | comm 
--------+------------+----------+-------+--------+-----------+------+---------------------+------+------
     20 | RESEARCH   | DALLAS   |  7369 | SMITH  | CLERK     | 7902 | 1980-12-17 00:00:00 |  800 |     
     30 | SALES      | CHICAGO  |  7499 | ALLEN  | SALESMAN  | 7698 | 1981-02-20 00:00:00 | 1600 |  300
     30 | SALES      | CHICAGO  |  7521 | WARD   | SALESMAN  | 7698 | 1981-02-22 00:00:00 | 1250 |  500
     20 | RESEARCH   | DALLAS   |  7566 | JONES  | MANAGER   | 7839 | 1981-04-02 00:00:00 | 2975 |     
     30 | SALES      | CHICAGO  |  7654 | MARTIN | SALESMAN  | 7698 | 1981-09-28 00:00:00 | 1250 | 1400
     30 | SALES      | CHICAGO  |  7698 | BLAKE  | MANAGER   | 7839 | 1981-05-01 00:00:00 | 2850 |     
     10 | ACCOUNTING | NEW YORK |  7782 | CLARK  | MANAGER   | 7839 | 1981-06-09 00:00:00 | 2450 |     
     20 | RESEARCH   | DALLAS   |  7788 | SCOTT  | ANALYST   | 7566 | 1987-04-19 00:00:00 | 3000 |     
     10 | ACCOUNTING | NEW YORK |  7839 | KING   | PRESIDENT |      | 1981-11-17 00:00:00 | 5000 |     
     30 | SALES      | CHICAGO  |  7844 | TURNER | SALESMAN  | 7698 | 1981-09-08 00:00:00 | 1500 |    0
     20 | RESEARCH   | DALLAS   |  7876 | ADAMS  | CLERK     | 7788 | 1987-05-23 00:00:00 | 1100 |     
     30 | SALES      | CHICAGO  |  7900 | JAMES  | CLERK     | 7698 | 1981-12-03 00:00:00 |  950 |     
     20 | RESEARCH   | DALLAS   |  7902 | FORD   | ANALYST   | 7566 | 1981-12-03 00:00:00 | 3000 |     
     10 | ACCOUNTING | NEW YORK |  7934 | MILLER | CLERK     | 7782 | 1982-01-23 00:00:00 | 1300 |     
(14 rows)

oracleoit=> select dname, count(empno) 人数
oracleoit-> from dept, emp
oracleoit-> where dept.deptno = emp.deptno
oracleoit-> group by dname;
   dname    | 人数 
------------+------
 SALES      |    6
 ACCOUNTING |    3
 RESEARCH   |    5
(3 rows)

oracleoit=> select dname, count(empno) 人数
oracleoit-> from dept natural join emp
oracleoit-> group by dname;
   dname    | 人数 
------------+------
 SALES      |    6
 ACCOUNTING |    3
 RESEARCH   |    5
(3 rows)

oracleoit=> select dname, count(empno) 人数
oracleoit-> from dept join emp using (deptno)
oracleoit-> group by dname;
   dname    | 人数 
------------+------
 SALES      |    6
 ACCOUNTING |    3
 RESEARCH   |    5
(3 rows)

oracleoit=> select dname, count(empno) 人数
oracleoit-> from dept join emp on (dept.deptno = emp.deptno)
oracleoit-> group by dname;
   dname    | 人数 
------------+------
 SALES      |    6
 ACCOUNTING |    3
 RESEARCH   |    5
(3 rows)

oracleoit=> select dname, count(empno) 人数
oracleoit-> from dept left join emp on dept.deptno = emp.deptno
oracleoit-> group by dname;
   dname    | 人数 
------------+------
 SALES      |    6
 OPERATIONS |    0
 ACCOUNTING |    3
 RESEARCH   |    5
(4 rows)

oracleoit=> select dname, count(empno) 人数
oracleoit-> from dept left outer join emp using (deptno)
oracleoit-> group by dname;
   dname    | 人数 
------------+------
 SALES      |    6
 OPERATIONS |    0
 ACCOUNTING |    3
 RESEARCH   |    5
(4 rows)

oracleoit=> select dname, count(empno) 人数
oracleoit-> from emp right outer join dept using (deptno)
oracleoit-> group by dname;
   dname    | 人数 
------------+------
 SALES      |    6
 OPERATIONS |    0
 ACCOUNTING |    3
 RESEARCH   |    5
(4 rows)

oracleoit=> select dname, count(empno) 人数
oracleoit-> from dept full outer join emp using (deptno)
oracleoit-> group by dname;
   dname    | 人数 
------------+------
 SALES      |    6
 OPERATIONS |    0
 ACCOUNTING |    3
 RESEARCH   |    5
(4 rows)

oracleoit=> select * from emp
oracleoit-> where comm is null;
 empno | ename  |    job    | mgr  |      hiredate       | sal  | comm | deptno 
-------+--------+-----------+------+---------------------+------+------+--------
  7369 | SMITH  | CLERK     | 7902 | 1980-12-17 00:00:00 |  800 |      |     20
  7566 | JONES  | MANAGER   | 7839 | 1981-04-02 00:00:00 | 2975 |      |     20
  7698 | BLAKE  | MANAGER   | 7839 | 1981-05-01 00:00:00 | 2850 |      |     30
  7782 | CLARK  | MANAGER   | 7839 | 1981-06-09 00:00:00 | 2450 |      |     10
  7788 | SCOTT  | ANALYST   | 7566 | 1987-04-19 00:00:00 | 3000 |      |     20
  7839 | KING   | PRESIDENT |      | 1981-11-17 00:00:00 | 5000 |      |     10
  7876 | ADAMS  | CLERK     | 7788 | 1987-05-23 00:00:00 | 1100 |      |     20
  7900 | JAMES  | CLERK     | 7698 | 1981-12-03 00:00:00 |  950 |      |     30
  7902 | FORD   | ANALYST   | 7566 | 1981-12-03 00:00:00 | 3000 |      |     20
  7934 | MILLER | CLERK     | 7782 | 1982-01-23 00:00:00 | 1300 |      |     10
(10 rows)