DataBase vol.14

  • 復習

WHEREとHAVING

  • HAVINGはSUMなどが付いている場合が多い。
    • GROUP BYでだいたい集約されている。

結合とは?

products

1 バナナ
2 みかん
3 マンゴー

sales

salesid product_id quantity
1 3 5
2 1 10
3 2 8
4 2 15
5 3 20
6 1 1
  • これを1対nという。

products

1 バナナ
2 みかん
3 マンゴー

products_additional_info

id product_id category_id
1 1 3
2 2 3
3 3 3
  • これを1対1という。

communities

1 moto
2 nyo

com_groups

1 1 dino
2 1 はんばーぐ

members

1 Aさん
2 Bさん
3 Cさん
4 Dさん
  • これをn対nという。
    • 多数対多数
    • これらは1対nに直せる。

UPDATE文等を扱う時は・・・

トランザクションを忘れない。

  • BEGIN;
  • COMMIT;
  • ROLLBACK;

InnoDBのときしか使えない。(MySQL)

TimeStamp

'2007' <= SaleDate × 数値型で解釈される(マイクロ秒で比較する)
'2007-01' <= SaleDate -があるので一応文字列で比較される?
'2007-01-01' <= SaleDate
'2007-1-1' <= SaleDate
2007-1-1 <= SaleDate ×
SaleDate LIKE('2007%') × MySQLではWarningが出ながらも表示