我知道应该在表中调用哪个列...例如
表名是“table1”; 列名是“名称”; 搜索是“$ query”;
现在我像这样查询MySQL
mysql_query("SELECT * FROM table1 WHERE name='$query'");
这是正确的打电话吗?我觉得花了更多的时间。任何建议??
答案 0 :(得分:0)
我通常这样做;
mysql_query("SELECT * FROM table1 WHERE name='" . $query . "'");
但是你还需要注意SQL注入......
答案 1 :(得分:0)
你是说回归你想要的行花了太长时间吗?如果是这种情况,它与您构建SQL的方式无关,而与您最终使用的SQL有关。
例如,在您的情况下,您写道:
select * from table1 where name='$query'
假设工作并扩展到你想要的东西(我认为不会 - 看看Keyzo的答案为什么),你必须查看表及其索引的定义,以确定是否快速这样做的方式。具体来说,name
上是否有索引?如果有一个索引,它有多大的选择性?桌子有多大?超过100K的记录?一百多万?如果不了解这些细节,就很难排除故障。