条件在变量$a、$v中,组织查询语句$sql,查询的结果再输出即可,例子代码关键部分:
<?php$a=$_GET['attr'] || 'a'
$v=$_GET['value'] || '你'
if(mysql_connect('127.0.0.1','root','123456')){
$sql="SELECT id FROM `tab` WHERE `attr`='$a' AND `value`='$v'"
if ($res=mysql_query($sql)){
$row=[]
while(list($id)=mysql_fetch_array($res)) $row[]=$id
mysql_free_result($res)
mysql_close()
echo '查询结果:'. implode($row,'<br>')
}else echo "执行SQL:$sql<br>失败:".mysql_error()
}else echo 'MYSQL连接失败:".mysql_error()
?>
查询今天最后一条数据SELECT * FROM `weibo_logs` where DATEDIFF( NOW(),date)=0 order by `date` desc limit 1
查询符合条件的weibo_user_id每天的一条数据
SELECT weibo_user_id, DATE_FORMAT(date,'%Y-%m-%d') FROM `text` where 'weibo_user_id'='{$source_account->id}' GROUP BY DATE_FORMAT(date,'%Y-%m-%d')
这样会有排序问题,那么就先排序
SELECT DATE_FORMAT(date,'%Y-%m-%d') as d
FROM (SELECT * FROM `text` ORDER BY date DESC) as s
where 'weibo_user_id'='{$source_account->id}'
GROUP BY DATE_FORMAT(date,'%Y-%m-%d')
mysql 支持存储过程,这个如果只连接一次数据库用存储过程实现最为合理,如果连接两次的话(这样效率低),就先查一次登陆学生的班级,放在程序变量里,然后再查这个班级的所有学生资料。
如果一个语句一次查询就是这样,access是可以通过的,不知道Mysql会不会通过:
SELECT A.m_name, A.m_classFROM `表` AS A INNER JOIN (select m_name, m_class from `表` where m_name='名字' and password='密码') AS B ON A.m_class=B.m_class
但是这样,应该考虑一下登录不成功获得的程序集是什么样,是空的还是报错,自己示范一下,提供下思路而已。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)