php多条件查询mysql并输出的问题

如图是简单的表,用图中代码可以输出想查询的数据,但我想根据数据的值查询出数据组并输出组的全部值,比如说输出id=10且name=Novis的两组数据的全部数据。网上似乎有select和where这样的但我写了很多遍都不行,初学者,希望各位能耐心解答

第1个回答  推荐于2018-04-06
  php查询mysql 多条件判断输出显示
  背景:
  从mysql查询各字段值输出并且按照条件用红色字体显示满足条件字段值。
  条件:
  1.syntime小于当前前一周时间的话显示红色。
  2.A字段为"无"的话,显示红色。
  3.B字段为"无"的话,显示红色。
  图一数据库结构:
  php查询mysql 多条件判断输出展示 三联
  图二数据库各字段值:
  我的代码:(我只满足了第一个条件,其余两个条件不知道该怎么来写)
  $sql = "select username, onoff, intime, syntime, device, a,b,person,dtime from cdmobile order by username desc ";
  $rst = mysql_query($sql);
  while($row=mysql_fetch_array($rst)){
  $nowtime=strtotime('+7 day');
  $syntime=strtotime($row['syntime']) ;
  if($nowtime>=$syntime){
  echo "{$row['username']}{$row['onoff']}{$row['intime']}{$row['syntime']}{$row['device']}
  >{$row['a']}{$row['b']}{$row['person']}{$row['dtime']}";
  }
  else
  echo "{$row['username']}{$row['onoff']}{$row['intime']}{$row['syntime']}{$row['device']}{$row['a']}{$row['b']}{$row['person']}{$row['dtime']}";
  }
  请各位大婶帮忙完善一下代码。要能同时满足三个条件的,并且能正确输出,该显示红色的地方显示红色。以下是目前的结果:
  ------解决方案--------------------
  echo "{$row['username']}{$row['onoff']}{$row['intime']}";
  if ($nowtime>=$syntime)
  echo "{$row['syntime']}";
  else
  echo "{$row['syntime']}";
  echo "{$row['device']}";
  if ($row['a' ]== "无")
  echo "{$row['a']}";
  else
  echo "{$row['a']}";
  if ($row['b'] == "无")
  echo "{$row['b']}";
  else
  echo "{$row['b']}";
  echo "{$row['person']}{$row['dtime']}";
  纠正下本回答被网友采纳
第2个回答  2016-12-26
$sql="select*from users where id=10 and name='Novis'";
$result=mysql_query($sql);

追问

然后需要再echo $result是吗?回去我试试看,谢谢!

追答

肯定不是直接echo
像你上边代码中那样循环出来。

本回答被提问者采纳
第3个回答  2016-12-26
有报错?把报错贴出来追问

没有报错,但不是我想要的结果,我希望的是按条件查询,不是查询某列然后输出……

Php页面查询关键词mysql数据库并输出
require("conn_inc.php");\/\/调用数据库连接文件,你的不一定是这个名字。asql='SELECT * FROM `total` where `ID`=1 ORDER BY `OD` ASC' ;\/\/上面SQL语句中,关键是最后的排序指令“ ORDER BY `OD` ASC'”,这个决定显示时的顺序。a2=mysql_query($asql,$myconn)or die("对不起,读入...

PHP 和MYSQL的查询,数据库里有多条数据,为什么只能查询出一行?
输出 result->num_rows 是等于1 说明查询出来的结果集只有一行。应该是SQL语句问题。

php连接mysql数据库,执行查询语句后,排序后再输出
你的情况直接使用排序语句就可以 select id, type from news where <condition> order by id desc

php,mysql问题,怎么输出最大值?
select MAX(id) FROM 数据表名称;

php 怎么读取mysql一条数据并输出某一字段
);\/\/选择要连接的数据库 mysql_select_db('数据库名字');\/\/执行查询,返回数据源 query = mysql_query("SELECT * FROM test");\/\/遍历数据源,并赋值给$r,当没有数据时,变成false中断循环 while($r = mysql_fetch_array($query)){ echo $r['field_name'];\/\/输出字段 } ...

小白求问,php里用while遍历mysql获得的值,为什么放到全局变量里就没法用...
应该是你往全局里放的时候,没有用数组的格式存入吧 global=[];arr=[1,2,3,4,5,6];foreach($arr as $item){ global['data'][]=$item; \/\/注意这个 []} var_export($global);如果你需要的是拼接的结果,可以用 .= x .= $row['id'];这样就把结果拼接在一起了(注意这样中间没有...

php中mysql查询,总记录100条,LIMIT 10,10,如何返回这10条的同时又返回...
方法是:不用limit限制直接把总量数据取出来,然后用条件判断控制每页显示的条数。这样做的弊端是数据量很大的时候内存损耗特别大,因为每个页面请求都是总量数据总量还是用另外一条语句取值吧,能节省些内存

mysql,php 中多对多关系的问题
用一条sql语句就行 设表结构如下:编辑员表 editor: id, name,pwd,newsblocks 新闻版块表 news : id, name sql语句如下:SELECT editor.*,GROUP_CONCAT(news.`name`) AS newsblock_name FROM editor LEFT JOIN news ON INSTR(editor.`newsblocks`, news.`id`)GROUP BY editor.id 这是...

php中统计mysql数据库多条件,多条目
while ($arr_type = mysqli_fetch_array($res_type)){ type = $arr_type[0];sum_wait = mysqli_num_rows(mysqli_query($link, "select * from table1 where 防患类别='{$type}' and 状态='代办'"));sum_done = mysqli_num_rows(mysqli_query($link, "select * from table1...

PHP执行批量mysql语句的解决方法
当有多条mysql语句连起来需要执行,比如 sqls= “insert table a values(1,2);insert table a values(2,3);”需要执行的话php中可以使用的方法有三个:mysql_query pdo mysqli 三种方法当sqls语句没有问题的时候都是可以的。但是 当sql语句是错误的时候会出现问题 第一条sql错误:三个方法都...

相似回答