人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

SQLite2+PHPで色々勉強してますが、わからないことがあります。

以下のようなテーブルがあった場合で、
戻り値を"鈴木""佐藤""山田"と順番に取得する場合、
どのようにPHPでSQL文を書けばいいでしょうか?
ご存知の方が居ましたら、教えていただけますか?

"名前""都道府県""担当エリア"
"鈴木""北海道""札幌"
"鈴木""北海道""旭川"
"佐藤""北海道""十勝"
"佐藤""北海道""夕張"
"山田""北海道""函館"
"山田""北海道""根室"


●質問者: きくりん
●カテゴリ:ウェブ制作
✍キーワード:PHP SQL SQLite エリア 佐藤
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● GreenStar
●200ポイント ベストアンサー

3名の順番を決める要素が必要です。例えば下記のようなものです。

担当者コード 名前 都道府県 担当エリア
1 鈴木 北海道 札幌
1 鈴木 北海道 旭川
2 佐藤 北海道 十勝
2 佐藤 北海道 夕張
3 山田 北海道 函館
3 山田 北海道 根室

担当者コード順で出力する例(説明用にカラム名は日本語で記述しています)

<?php
$dbhandle = sqlite_open('データベースファイル');
$sql = 'SELECT 担当者コード,名前 FROM テーブル GROUP BY 担当者コード,名前 ORDER BY 担当者コード';
$result = sqlite_array_query($dbhandle, $sql, SQLITE_ASSOC);
foreach ($result as $entry) {
 echo $entry['名前'];
}
?>

http://jp2.php.net/manual/ja/function.sqlite-array-query.php


2 ● ko8820
●20ポイント

SQLでORDER BYを使います。

名前で並び変えても可能ですが、この場合、文字コードで並べら得られます。

郵便番号その他、並び替えたいものをでーたに埋め込むのが良いでしょう。

ORDER BYは複数指定できます。

ORDER BY 項目1、項目2 です。

http://sql.1keydata.com/jp/sql-order-by.php


3 ● ホーエンハイム
●20ポイント

SQL文を以下のようにすればよいのです。

SELECT DISTINCT 名前 WHERE 1 FROM テーブル名;
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ