More Related Content More from Soudai Sone (20) Wtm37. リーダブルパスワード
つまりはこう
SELECT
account
FROM
kakenavi
WHERE
password= SHA2(‘deathMaster’, 256)
49. インプリシットカラム(暗黙の列)
*を使う街角の人の声
1 columnを書くのがめんどくさい
2 ORM使ったら*になった
3 SQLは短くシンプルにしたい
53. インプリシットカラム(暗黙の列)
予期せぬQueryを招く
SELECT
*
FROM
kakenavi_blog
INNER JOIN
twitter
ON
kakenavi_blog.account = twitter.account
56. インプリシットカラム(暗黙の列)
予期せぬQueryを防ぐには
SELECT
kakenavi_blog.id as k_id
twitter.id as twitter.t_id
FROM
kakenavi_blog
INNER JOIN
twitter
ON
kakenavi_blog.account = twitter.account
71. インプリシットカラム(暗黙の列)
PHP側での処理
$sql = ‘select * from hoge';
$row = $pdo->query($sql)->fetch ();
echo $row[‘4’];
73. インプリシットカラム(暗黙の列)
INSERTの省略記法
--通常
INSERT INTO hoge (hoge_id, deleted, memo)
VALUES (NULL, 1, ’hoge’)
--省略
INSERT INTO hoge VALUES (NULL, 1, ’hoge’)
89. ジェイウォーク(信号無視)
PHP側での処理
$characters = explode(‘,’, $character_column);
foreach ( $characters as $key => $character ) {
echo $character;
}
107. ジェイウォーク(信号無視)
問題点
1 検索の低パフォーマンス
2 更新時の整合性が担保できない
3 集約クエリが作成出来ない
109. ジェイウォーク(信号無視)
メリット
1 検索時にINDEXが効く
2 整合性が担保できる
3 集約クエリによる集計の簡略化
123. まとめ
アンチパターンを知るメリット
1 この問題!進研ゼミでやったところだ!
124. まとめ
アンチパターンを知るメリット
1 この問題!進研ゼミでやったところだ!
2 悪いことを「悪い」と知れる
125. まとめ
アンチパターンを知るメリット
1 この問題!進研ゼミでやったところだ!
2 悪いことを「悪い」と知れる
3 失敗談は鉄板ネタになる←いまここ