我正在尝试将一个mySQL数据库表过滤成一个网页。当涉及到使用查询从列中获取特定数据时,我可以:
$result = mysql_query("SELECT * FROM availability WHERE location = 'London'");
但我遇到的特别问题是从一个列中检索结果,其中有一些变量值和一些空值。我就是不能让它工作。我想要做的是选择表,识别一列,然后显示该特定列的所有结果,其中有一个值,即非null。目前,我已经尝试过这样的事情:
$result = mysql_query("SELECT * FROM availability WHERE team IS NOT NULL")
$result = mysql_query("SELECT team FROM availability WHERE team IS NOT NULL");
我做错了什么?我不是PHP专家,我已经研究和尝试了各种解决方案,但我总是得到一个服务器错误。感谢您收到的任何建议。
发布于 2013-06-13 21:48:02
您忘记了第一行和第二行之间的分号:
$result = mysql_query("SELECT * FROM availability WHERE team IS NOT NULL");
$result = mysql_query("SELECT team FROM availability WHERE team IS NOT NULL");
我猜您不想将这两个变量都命名为$result
。
PS:您应该使用MySQLi或PDO,而不是mysql_*
函数,后者已被弃用。More information avalible here。
发布于 2013-06-13 22:00:58
您使用了正确的sql。正确的sql应该是:
$result = mysql_query(" SELECT `team` FROM `availability` WHERE `team` IS NOT NULL");
然后只显示那些不为空的值。您只需检查是否在where条件中使用了正确的字段。
https://stackoverflow.com/questions/17088684
复制相似问题