Php SQL查询,帮助我获取“的编号”;“是”;它在一列中
我想显示一次约会有多少个“y” 我不知道是否有这样的事情:( 我想在2013.01.01列中显示“Y”的数字Php SQL查询,帮助我获取“的编号”;“是”;它在一列中,php,mysql,Php,Mysql,我想显示一次约会有多少个“y” 我不知道是否有这样的事情:( 我想在2013.01.01列中显示“Y”的数字 <?php $link = mysql_connect("localhost", "", ""); mysql_select_db("", $link); $result = mysql_query("SELECT * FROM attendance WHERE date = '2013.01.01'", $link); $num_rows = mysql_num_rows($re
<?php
$link = mysql_connect("localhost", "", "");
mysql_select_db("", $link);
$result = mysql_query("SELECT * FROM attendance WHERE date = '2013.01.01'", $link);
$num_rows = mysql_num_rows($result);
echo "$num_rows";
?>
期望输出:
no. of presents on 2013.01.01 are 4
您的基本sql查询是
选择合并((pt17='y'),0)
+合并((pt18='y'),0)
+合并((pt19='y'),0)
+合并((pt20='y'),0)
+合并((pt21='y'),0)
+合并((pt22='y'),0)
+合并((pt23='y'),0)
+合并((pt24='y'),0)num
出席人数
其中日期='2013.01.01'
输出:
| NUM |
-------
| 4 |
peterm和chetan已经给出了简单的答案。因此,我将给出另一种解决方案。我不确定ptXX列的上下文是什么,但它们似乎是通用的。如果是这样,最好将表重新构造为以下内容
Attendance
DATE | PT-ID | status(y/n/_)
(如有必要,添加定义PT-ID的表格)使用此表结构,您可以轻松地在特定日期请求出席,而无需使用此处提供的高级(我认为是硬编码的)查询。您可以尝试计数(年(日))你能展示一下你想要的输出是怎样的吗?@Prix谢谢。我已经更新了我的问题。@user2457175,你想在PHP上而不是在MySQL查询上格式化它,对吗?首先规范化你的数据。sql表不是电子表格!如何在前端显示这个结果。这样行吗?
$num\u rows=mysql_num_rows($result);echo“$num_rows”
非常感谢:)它工作得很好!但问题是它将结果显示为string(1)“2”
2就是答案。如何删除字符串(1)
如何将显示更改为礼物数量:5
@user2457175不客气:)请参阅更新的答案。您可以使用echo
将最后一行更改为您喜欢的内容。
| NUM |
-------
| 4 |
<?php
$link = mysql_connect("localhost", "vishnu65_ven", "vishnu65_ven");
mysql_select_db("vishnu65_ven", $link);
$result = mysql_query("SELECT * FROM attendance WHERE date = '2013.01.01'", $link);
while($rows = mysql_fetch_rows($result)){
$num_of_y = 0;
foreach($rows as $row){
if($row == 'y')
$num_of_y++;
}
echo 'Number of y = '.$num_of_y;
}
?>
Attendance
DATE | PT-ID | status(y/n/_)