<?php

require_once('ConnectDB.class.php');

define('DB_TYPE', 'mysql');
define('DB_USER', 'root');
define('DB_PASSWORD', 'mSNIB3zuts');
define('DB_NAME', 'KSA110205');
define('DB_DSN', DB_TYPE.'://'.DB_USER.':'.DB_PASSWORD.'@localhost/'.DB_NAME);

$ksa_list = &new ConnectDB(DB_DSN);
$field_list = &new ConnectDB(DB_DSN);


echo "<pre>\n";
if($ksa_list->connect() && $field_list->connect()) {
  $ksa_sql = "SELECT `CID`, CONCAT(`HDER`,`主工種`) AS `K_HDER`, `主工種` FROM `ksa` ;";
  $field_sql = "SELECT `CD`, `name` FROM `field_list` ;";
  
  if($ksa_list->load($ksa_sql) && $field_list->load($field_sql)) {
    $ksa_record = $ksa_list->getRecord();
    $field_record = $field_list->getRecord();
    
    foreach($ksa_record as $ksa_rec) {
        echo "${ksa_rec['CID']}";
        
        $count_sql = "SELECT I.`母数` AS `総数`, C.`母数` AS `工種別数` FROM ";
        $count_sql.= "( SELECT COUNT(*) AS `母数` FROM `fukui` WHERE `工事の種類` = '${ksa_rec['主工種']}' ) AS C, ";
        $count_sql.= "( SELECT COUNT(DISTINCT `ID`) AS `母数` FROM `fukui` ) AS I ;";
        $count_all = &new ConnectDB(DB_DSN);
        if($count_all->load_once($count_sql)) {
            $count_record = $count_all->getRecord();
            foreach($count_record as $count_rec) {
                echo "\t${count_rec['総数']}\t${count_rec['工種別数']}";
            }
        } else {
            $err = $count_all->getError();
            echo "Error: ${err}\n";
            exit();
        }
        
        foreach($field_record as $field_rec) {
            
            $rank_sql = "SELECT COUNT(DISTINCT L.`ID`) + 1 AS `順位` ";
            $rank_sql.= "FROM `fukui` AS L, ";
            $rank_sql.= "( SELECT `主工種`, `${field_rec['name']}` FROM `fukui`";
            $rank_sql.= "  WHERE `K_HDER` = '${ksa_rec['K_HDER']}' ) AS C ";
            $rank_sql.= "WHERE ";
            if($field_rec['count'] = '0') {
                $rank_sql.= "L.`工事の種類` = C.`主工種` AND ";
            }
            $rank_sql.= "L.`${field_rec['name']}` > C.`${field_rec['name']}` ;";
            
            $rank = &new ConnectDB(DB_DSN);
            if($rank->load_once($rank_sql)) {
                $rank_record = $rank->getRecord();
                foreach($rank_record as $rank_rec) {
                    echo "\t${rank_rec['順位']}";
                }
            } else {
                $err = $rank->getError();
                echo "Error: ${err}\n";
                exit();
            }
        }
        echo "\n";
    }
  }
  $ksa_list->close();
  $field_list->close();
}
echo "</pre>\n";
exit();
?>
