Php MySql合并不起作用
我有这个表,2门课程,12个可能的科目(内容:科目ID,如果没有更多科目,则为空)。请注意,它最多可以包含50种不同的课程,而不仅仅是2种 我正在尝试显示课程名称(工作正常),并通过合并在每门课程中显示课程的科目ID,这应该是最终结果: Curso de programmación Creativa con PHP y MySQL-Curso:1-Curso:2-Curso:10- Máster en Diseño y Desarrollo网站-CURSO:1-Php MySql合并不起作用,php,mysql,coalesce,Php,Mysql,Coalesce,我有这个表,2门课程,12个可能的科目(内容:科目ID,如果没有更多科目,则为空)。请注意,它最多可以包含50种不同的课程,而不仅仅是2种 我正在尝试显示课程名称(工作正常),并通过合并在每门课程中显示课程的科目ID,这应该是最终结果: Curso de programmación Creativa con PHP y MySQL-Curso:1-Curso:2-Curso:10- Máster en Diseño y Desarrollo网站-CURSO:1- 但我的联合表达出现了一些问题
但我的联合表达出现了一些问题: Curso de programmación Creativa con PHP y MySQL-Curso:1-Curso:1- Máster en Diseño y Desarrollo网站-CURSO:1-CURSO:1- 代码如下:
$select = select("SELECT * FROM course_conf JOIN course_type ON ct_id=co_fk_ct_id ORDER BY co_name");
while($registroBbdd = consultaRegistro($select))
{
$courseName=$registroBbdd['co_name'];
$result = select("SELECT COALESCE(co_subj1,co_subj2,co_subj3,co_subj4,co_subj5,co_subj6,co_subj7,co_subj8,co_subj9,co_subj10,co_subj11,co_subj12) FROM course_conf");
echo '<div class="contentColumn80">
<span class="tableContentText ">'.$courseName.' - </span>';
while($row=mysql_fetch_array($result))
{
echo '<span>CURSO: '.$row['COALESCE(co_subj1,co_subj2,co_subj3,co_subj4,co_subj5,co_subj6,co_subj7,co_subj8,co_subj9,co_subj10,co_subj11,co_subj12)'].' - </span>';
}
echo '</div>';
}
$select=select(“选择*从课程配置中加入课程类型,按课程名称排序”);
while($registarbbdd=consultaRegistro($select))
{
$courseName=$registorbdd['co_name'];
$result=select(“从课程配置中选择联合(联合主题1、联合主题2、联合主题3、联合主题4、联合主题5、联合主题6、联合主题7、联合主题8、联合主题9、联合主题10、联合主题11、联合主题12”);
回声'
“.$courseName。”——”;
while($row=mysql\u fetch\u数组($result))
{
回音“CURSO:”.$行[“合并(合并(合并)(合并主题1、合并主题2、合并主题3、合并主题4、合并主题5、合并主题6、合并主题7、合并主题8、合并主题9、合并主题10、合并主题11、合并主题12)”;
}
回声';
}
好的,有两个明显的错误:
- 将始终返回第一个参数,该参数不为空(在您的情况下,始终是存储在
中的值)co_subc1
- 第二个SQL查询不包括任何
-子句。因此,您可以获得所有课程的WHERE
co_sub1
$select=select(“选择*从课程配置中加入课程类型,按课程名称排序”);
while($registarbbdd=consultaRegistro($select))
{
$courseName=$registorbdd['co_name'];
回声'
“.$courseName。”——”;
对于($i=1;$i),COALESCE将返回co_subs1的值,因为它是notnull的第一个表达式,因此它始终为1。