【发布时间】:2016-04-12 21:14:43
【问题描述】:
我正在尝试从 2 个不同的表中为每个 ID 获取三件事,即对我来说 RegID
我的第一个查询是选择
DISTINCT RegID from table_one,如果有多个它应该选择所有AttendanceStatus =Absent和AttendanceDate = Todays_date对于每个选择的
RegID,它应该从同一个table_one中选择DISTINCT Subjects和Standard- 它应该从
table_two中选择手机号码的相同ID,它应该回显然后重复第二个RegID,如果存在,同样应该重复直到最后一个RegID
我得到DISTINCT regid,但在同一个while语句中,如果我使用提取结果来获取主题和标准以及注册ID,它只给我一个id、主题和标准,我不知道如何解决这个问题
我的编辑
现在在我的示例数据库中,我有两个条目在 AttendanceStatus 中表示不存在,所以在我的第一个选择中,如果存在,我将删除重复项并选择那些 2RegID 工作正常 现在每个 @ 987654336@ 我想在我的第二个查询中选择Standard 和subject,而语句艰难有两个RegID 它只给我一个我需要这两个缺席的reg 与它们各自不同的一起显示学科和标准
简单点
- 首先
RegID通过删除重复项来选择缺席的人 - 选择
Standard和Subjects作为第一个选择的RegID's - 分别回显
RegID、Standard和Subjects对于每个RegID
我的 table_one 数据库
AttendanceDate Standard Subjects RegID AttendanceStatus
2016-01-08 00:00:00 III BSc PCM PHY/CHEM PRACTICAL 1382043 Present
2016-01-08 00:00:00 III BSc PCM PHY/CHEM PRACTICAL 1382044 Present
2016-01-08 00:00:00 III BSc PCM PHY/CHEM PRACTICAL 1382045 Present
2016-01-08 00:00:00 III BSc PCM PHY/CHEM PRACTICAL 1382046 Absent
2016-01-08 00:00:00 III BSc PCM PHY/CHEM PRACTICAL 1382047 Absent
PHP Mysqli 代码
$query="SELECT DISTINCT RegID FROM table_one WHERE AttendanceDate='2016-01-08 00:00:00' and AttendanceStatus='Absent'" ;
$data=mysqli_query($mysqli,$query)or die(mysqli_error());
if(mysqli_num_rows($data) > 0) {
while($row=mysqli_fetch_array($data)){
$StudentRegID= $row['RegID'];
$query="SELECT DISTINCT(CONCAT(Standard,Subjects)) AS standard_and_subject , RegID FROM table_one WHERE AttendanceDate='2016-01-08 00:00:00' and RegID='$StudentRegID'" ;
$data=mysqli_query($mysqli,$query)or die(mysqli_error());
if(mysqli_num_rows($data) > 0) {
while($row=mysqli_fetch_array($data)){
if($row['RegID'] != '' && $row['RegID'] != NULL){
$RegID = $row['RegID'];
$standard_and_subject = $row['standard_and_subject'];
echo $standard_and_subject;
echo $RegID;
}
}
}
}
}
【问题讨论】:
-
您需要多行代替一行,对吗?或者你需要一个数组中的所有 regid 和一个数组中的标准和主题,像这样?你将如何得到它,你能解释一下吗?
-
@jilesh 是的,但是对于特定的 id,最后我也需要从不同的表中选择一个值,正如我在第 3 点中提到的那样
-
请问您可以编辑您的帖子并设置您当前获得的内容和期望的内容吗?
-
@jilesh 我已经编辑了我的帖子,请让我知道你需要什么\