Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何执行与sql关联的if…else语句_Mysql_Sql - Fatal编程技术网

Mysql 如何执行与sql关联的if…else语句

Mysql 如何执行与sql关联的if…else语句,mysql,sql,Mysql,Sql,我可以创建会影响sql的if…else语句吗?下面是我现在的代码 SQL语句 $sql= "SELECT * FROM maklumatakaun LEFT JOIN detailakaun ON maklumatakaun.id = detailakaun.id LEFT JOIN maklumatbilakaun ON maklumatakaun.NoAkaun = maklumatbilakaun.NoAkaun LEFT JOI

我可以创建会影响sql的if…else语句吗?下面是我现在的代码 SQL语句

$sql= "SELECT  * FROM   maklumatakaun 
        LEFT JOIN detailakaun ON maklumatakaun.id = detailakaun.id 
        LEFT JOIN maklumatbilakaun ON maklumatakaun.NoAkaun = maklumatbilakaun.NoAkaun 
        LEFT JOIN kodjenisakaun ON detailakaun.KodJenisAkaun = kodjenisakaun.KodJenisAkaun
        LEFT JOIN kodlokasi ON detailakaun.KodLokasi = kodlokasi.KodLokasi
        LEFT JOIN kodkategori ON maklumatakaun.KodKategori = kodkategori.KodKategori        
        LEFT JOIN koddaerah ON maklumatakaun.KodDaerah = koddaerah.KodDaerah
        WHERE maklumatakaun.KodKategori = '$KodKategori' 
        AND detailakaun.KodJenisAkaun = '$KodJenisAkaun'
        AND maklumatakaun.KodDaerah = '$KodDaerah' 
        AND maklumatbilakaun.BulanBil = '$BulanBil' 
        AND maklumatbilakaun.TahunBil ='$TahunBil' 
        GROUP BY maklumatakaun. NoAkaun ";
通过在包含数据库选项的下拉框中选择,用户可以选择要查看的“daerah”报告

<?php include('dbase.php');
$sql = "SELECT KodDaerah, NamaDaerah FROM koddaerah";
$result = mysql_query($sql);
echo "<select name='KodDaerah' id='KodDaerah' class='input_field' required />
<option>Pilih Daerah</option>
<option value='all'>Seluruh Pahang</option>";
while ($kod = mysql_fetch_array ($result)){
echo "<option value=".$kod['KodDaerah'].">" .$kod['NamaDaerah']."</option>";
}
echo "<?select>";
?>


让我们假设他们想看到所有的daerah,我怎么能做到?他们可以在下拉框中选择“全部”,但我应该如何编写if…else语句?

我不确定这是否是您想要知道的

SELECT IF(column_1 = 5, 'if value is 5 ', 'else') FROM table_name;

您也可以在WHERE子句中使用此选项

在我看来,最简单的事情(可能有点混乱)是在sql中添加where变量

   $where = '';
    $sql= "SELECT  * FROM   maklumatakaun 
            LEFT JOIN detailakaun ON maklumatakaun.id = detailakaun.id 
            LEFT JOIN maklumatbilakaun ON maklumatakaun.NoAkaun = maklumatbilakaun.NoAkaun 
            LEFT JOIN kodjenisakaun ON detailakaun.KodJenisAkaun = kodjenisakaun.KodJenisAkaun
            LEFT JOIN kodlokasi ON detailakaun.KodLokasi = kodlokasi.KodLokasi
            LEFT JOIN kodkategori ON maklumatakaun.KodKategori = kodkategori.KodKategori        
            LEFT JOIN koddaerah ON maklumatakaun.KodDaerah = koddaerah.KodDaerah
            WHERE maklumatakaun.KodKategori = '$KodKategori' 
            AND detailakaun.KodJenisAkaun = '$KodJenisAkaun'
            AND maklumatbilakaun.BulanBil = '$BulanBil' 
            AND maklumatbilakaun.TahunBil ='$TahunBil' 
            ".mysql_real_escape_string($where)."
            GROUP BY maklumatakaun. NoAkaun ";



if($KodDaerah != 'all'){
  $where .= "AND maklumatakaun.KodDaerah = '$KodDaerah' "; //Add your where statement here
  //Whatever you want to do
}

我只需要得到所有结果并使用AJAX对它们进行排序,为什么在没有聚合函数(MAX、SUM、COUNT等)的情况下分组?考虑选择不同的*…如果要删除重复的行,我可以不使用AJAX吗?因为我不太了解AJAXOfcourse,没有AJAX是可能的,但是你的问题有点不清楚。daerahs是什么?它们在桌子上吗?柱?可以在WHERE子句中选择它们吗?DAERAH是马来语,地区用户可以从下拉框中选择,下拉框中包含表Kodaerah中的数据。Kodaerah的列为Kodaerah和NamaDaerah@SinanSamet