[pgsql-jp: 29222] Re: 電話番号から住所を検索するSQL

Kei Yanaihara kei @ easylife.co.jp
2003年 2月 25日 (火) 13:33:12 JST


矢内原@イージーライフです。

ごめんなさい。
先程のプログラム % とpg_freeresult が抜けてましたね。

<?php
for ( $len = strlen( $phone ); $len > 1; $len-- ) {
  $db_result = pg_exec( $conn, "select addr from tel2addr where tel like
'" . substr( $phone, 0, $len ) . "%'" );
  $db_result_rows = pg_numrows( $db_result );
  for ( $row = 0; $row < $db_result_rows; $row++ ) {
    /* 結果を出力 */
  }
  pg_freeresult( $db_result );
  if ( $db_result_rows > 0 ) break;
}
?>

> プログラムに手間をかけて良いなら・・・。
> (PHPです。他の言語の場合適宜変換してください。)
> 
> <?php
> for ( $len = strlen( $phone ); $len > 1; $len-- ) {
>   $db_result = pg_exec( $conn, "select addr from tel2addr where tel like
> '" . substr( $phone, 0, $len ) . "'" );
>   $db_result_rows = pg_numrows( $db_result );
>   if ( $db_result_rows == 0 ) continue;
>   for ( $row = 0; $row < $db_result_rows; $row++ ) {
>     /* 結果を出力 */
>   }
>   break;
> }
> ?>

-- 
/**********************************************************/
/*  Kei Yanaihara                                         */
/*    kei @ easylife.co.jp                                  */
/*                                                        */
/*  EasyLife Corporation                                  */
/*    http://www.easylife.co.jp/                          */
/*                                                        */
/*    TEL : 03 - 5726 - 1080                              */
/*        : 090 - 4425 - 9748                             */
/*    FAX : 03 - 5726 - 1090                              */
/*                                                        */
/*    152-0035                                            */
/*      1-21-1 Jiyuugaoka                                 */
/*      Meguro-ku Tokyo, Japan                            */
/**********************************************************/



pgsql-jp メーリングリストの案内