WEBシステム開発|PHPとPostgreSQLの開発例|●2_04_03-検索処理(order句)(select)

PHPとPostgreSQLを利用したWEBシステムの開発例を掲載していきます。腕時計 販売サイト my-watch.biz



2_04_03-検索処理(order句)(select)

 非常に簡単なデータで演習を行って来ましたがもう少し複雑なデータを扱っていきます。下記のコードをデータベース「kaden_hanbai」に接続した状態で実行して下さい。
 テーブル作成に関する説明はここでは行いません。
CREATE TABLE shouhin_t (

shouhin_coad varchar(200) NOT NULL,

name varchar(200) ,

kakaku int ,

printer_name text,

top_flug varchar(10) ,

top_on_flug varchar(10) ,

picture_link varchar(100) ,

PRIMARY KEY (shouhin_coad)

);


下記のカラムが作成されます。内容はダミーです。



各カラムの内容は下記になります。
カラム名 説明
shouhin_coad 商品に割り当てているコード、主キーになります。
name 商品名です。(部品)
kakaku 販売価格です。
printer_name 商品(部品)に対応する商品です。
top_flug 画面上に商品画像を表示候補。NULLは候補無し、「on」で候補。「on」であっても下記の「top_on_flug」が「on」でないと画面には出力しません。待機状態のようなデータです。
top_on_flug 商品画像を画面に表示するかどうかを判定。NULLでは表示しない、「on」で表示。
picture_link 商品画像までのリンク情報。

「top_flug」、「top_on_flug」は「フラグ」という種類のデータです。「フラグ」は「旗」という意味です。「旗を揚げる、揚げない」とかの意味になります。
データがNULLであれば「〜しない」、「on」であれば「〜する」という判定に使っています。

信号も一種のフラグですね。「青」で許可、「赤」で許可しない、「黄」で注意です。

「top_flug」の内容をそのままデータとして保存するより記号化してプログラムに判定させるほうが仕様を把握しやすいからです。
「on」の状態にするのに「フラグを立てる」とか、「off」の状態にするのに「フラグを下げる」とか言ったりもします。

フラグは先の信号のように3種類、又はそれ以上に状態が多い場合があります。データそのものを見ても非常にわかり難いので仕様書で明確に表現する必要があります。

ダミーデータを準備していますので下記をダウンロードして下さい。
shouhin_t.lzh

ダウンロードしたら解凍して下さい。

先に作成した「shouhin_t 」テーブルにダウンロードしたデータをインポートします。


データは下記の内容になっています。


それでは、そろそろ(order句)の検索の説明に入ります。「order句」はソートの処理です。
基本構文は下記になります。
SELECT カラム名(1) , カラム名(2), ・・・・ FROM テーブル名 ORDER BY カラム名

それではさっそくコマンドを打って見ましょう。インデントには全角スペースを使っていますので削除して使って下さい。
下記のSQLは商品コードの昇順で検索します。
SELECT
  shouhin_coad,
  name,
  kakaku,
  printer_name
FROM
  shouhin_t
ORDER BY
  shouhin_coad

下記が検索されます。



ソートを逆の降順で行う場合の構文は以下です。

SELECT カラム名(1) , カラム名(2), ・・・・ FROM テーブル名 ORDER BY カラム名 DESC

コマンドは以下になります。

SELECT
  shouhin_coad,
  name,
  kakaku,
  printer_name
FROM
  shouhin_t
ORDER BY
  shouhin_coad DESC

下記が検索されます。



「kakaku」カラムでソートの検索ができるので自分で演習してみて下さい。
例文で十分できると思います。

また今までの「where句」も使って色々とSQLを組んでみて下さい。
数多くコマンドを打ったものの勝ちです。


戻る

Copyright (c) 2007 MSweb All Rights Reserved

腕時計 クロノグラフ(時計)のメンズ専門販売サイトカシオ G-SHOCK、Baby-G(腕時計)専門の通信販売サイトG-SHOCK、Baby-G専門通販サイト 運営ブログ

腕時計 女性専用 販売のladies-watch.biz腕時計 メンズ(男性)専門販売のmens-watch.biz