php_1
4248 ワード
1.日付文字列07/26/2016を2016/07/26形式に変換
2.テーブルloginから名前フィールドadminの上位10件の結果のすべての情報を含むsql文を選択
3.inner joinの使い方:
ユーザ(idとusernameの2つのフィールドがある)、postテーブル1つが投稿情報(id,info,user_idの3つのフィールドがある)を記録すると仮定する.投稿したユーザー(username)と投稿情報(info)をクエリーします.次の2つのsql文は等価です.
4.left joinの使い方:
上記の例と同様に、sql文が
5.mysqlテーブルの最適化
索引を追加索引がない場合:
6.データベースを最適化する最も直接的で最も効果的な方法は、データベースにインデックスを付け、よくクエリーされるフィールドである
インデックスは3種類あります:1.Unique一意インデックス:同じ値は許可されずnull値を持つことができます.2.index通常インデックス:同じ値を許可します.3.primary keyプライマリ・キー・インデックス:同じ値は許可されずnull値は許可されず、1つのテーブルに1つのprimary keyしかありません.
7.関数を書いて、できるだけ効率的に、標準urlからファイルの拡張子を取り出します.
2.テーブルloginから名前フィールドadminの上位10件の結果のすべての情報を含むsql文を選択
select * from login where name like "%admin%" limit 10 order by id;
# : like. order by
3.inner joinの使い方:
ユーザ(idとusernameの2つのフィールドがある)、postテーブル1つが投稿情報(id,info,user_idの3つのフィールドがある)を記録すると仮定する.投稿したユーザー(username)と投稿情報(info)をクエリーします.次の2つのsql文は等価です.
$sql1='select user.username,post.info from user,post where user.id=post.user_id';// 。
$sql2='select user.username,post.info from user inner join post on user.id=post.user_id';//
# : 2 sql , 。
4.left joinの使い方:
上記の例と同様に、sql文が
$sql3='select user.username,post.info from user left join post on user.id=post.user_id';
//左結合である場合、すべてのユーザの投稿情報をクエリーすることを示す.左結合は左テーブルに偏っており、左テーブルの選択フィールドのすべての値がクエリーされ、$sql 3のクエリー結果はusername
、対応するinfo
フィールドの値が出力され、対応するユーザーが投稿した場合は投稿の内容が表示され、投稿がなければnull
と表示されます.5.mysqlテーブルの最適化
索引を追加索引がない場合:
mysql> explain select *from tag where tname='php'\G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: tag
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 5
Extra: Using where
1 row in set (0.00 sec)
# rows:5 mysql 5 tname='php',type:ALL , 1 ,tname , 。 。
tname
フィールドに通常のインデックスを追加します.次に、クエリーします.特に、explainはdescの効果と同じです.たとえば、次の分析文も書くことができます.desc select * from tag where tname='php'\G
インデックスを削除する文はalter table tag drop index tn;
//インデックス名だけを削除すればいいので、フォローしないでください(フィールド名)mysql> alter table tag add index tn(tname);
Query OK, 5 rows affected (0.15 sec)
Records: 5 Duplicates: 0 Warnings: 0
mysql> explain select * from tag where tname='php'\G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: tag
type: ref
possible_keys: tn
key: tn
key_len: 75
ref: const
rows: 1
Extra: Using where
1 row in set (0.00 sec)
type:ref ,rows:1, 1 tname='php', tname tn, key:tn。
6.データベースを最適化する最も直接的で最も効果的な方法は、データベースにインデックスを付け、よくクエリーされるフィールドである
where
の後ろのフィールドにインデックスを付けることです.インデックスは3種類あります:1.Unique一意インデックス:同じ値は許可されずnull値を持つことができます.2.index通常インデックス:同じ値を許可します.3.primary keyプライマリ・キー・インデックス:同じ値は許可されずnull値は許可されず、1つのテーブルに1つのprimary keyしかありません.
7.関数を書いて、できるだけ効率的に、標準urlからファイルの拡張子を取り出します.
// : http://www.test.com.cn/abc/de/index.php?id=10 php .php
$url = 'http://www.test.com.cn/abc/de/index.php?id=10';
$arr = parse_url($url);
>>
Array
(
[scheme] => http
[host] => www.test.com.cn
[path] => /abc/de/index.php
[query] => id=10
)
>
$arr2 = pathinfo($arr['path']);
>>
Array
(
[dirname] => /abc/de
[basename] => index.php
[extension] => php
[filename] => index
)
>
echo $arr2['extension'];//
###### 8.MVC ?
php mvc 。 , View Controller 。M model ,V View , ,C Controller php 。
###### 9.
>1. dns
2. lvs(Linux Virtual Server) **Linux **, 。
3.
4. web nginx, 50,000 apache 2000-4000.
5. , php html。 (tp ,Smarty )
6. (tp)
7. ( memcache,redis)
8.
9.
10.