我想要做的就是查询我的表,其中包含6列,条件必须由其中3列满足
我的表格信息 表名称My_table列a1,a2,a3,a4,a5,a6
我尝试的代码如下,当然不起作用
$myquery = "SELECT * FROM My_table WHERE a2='$variable1' AND a3='$variable2' AND a6='$variable3' ORDER BY a2 ASC";
$myresult = mysql_query($myquery);
我的结果必须包含符合上述条件的行。
这样做的正确方法是什么? 提前谢谢。
答案 0 :(得分:2)
缺失:
$result = mysql_fetch_array($myresult);
您可以使用以下命名约定来避免此类错误:
$my_sql = "SELECT * FROM My_table WHERE a2='$variable1' AND a3='$variable2' AND a6='$variable3' ORDER BY a2 ASC";
$my_query = mysql_query($my_sql);
$my_result = mysql_fetch_array($my_query);
答案 1 :(得分:0)
好的,这就是我的工作方式,它对我很有用,所以它也可以帮到你。
因为我正在将我的表的3列与3个变量进行比较,并且我知道它们已经修复并且必须完全按照这个顺序完成这些条件,我在UPPER中搜索了3列的字符串然后对我的变量做了同样的事情,然后将它们相互比较,这给了我正在寻找的结果。
这是我的问题的解决方案代码:
$myquery = "SELECT a2 a3 a6 FROM My_table WHERE concat(UPPER(a2), UPPER(a3), UPPER(a6)) LIKE concat(UPPER('$variable1'), UPPER('$variable2'), UPPER('$variable3')) ORDER BY a2 ASC";
$ myresult = mysql_query($ myquery);
希望它也可以帮助别人。