这是MySQL的正确查询

时间:2010-06-21 12:33:59

标签: mysql

我知道应该在表中调用哪个列...例如

表名是“table1”; 列名是“名称”; 搜索是“$ query”;

现在我像这样查询MySQL

mysql_query("SELECT * FROM table1 WHERE name='$query'");

这是正确的打电话吗?我觉得花了更多的时间。任何建议??

2 个答案:

答案 0 :(得分:0)

我通常这样做;

mysql_query("SELECT * FROM table1 WHERE name='" . $query . "'");

但是你还需要注意SQL注入......

答案 1 :(得分:0)

你是说回归你想要的行花了太长时间吗?如果是这种情况,它与您构建SQL的方式无关,而与您最终使用的SQL有关。

例如,在您的情况下,您写道:

select * from table1 where name='$query'

假设工作并扩展到你想要的东西(我认为不会 - 看看Keyzo的答案为什么),你必须查看表及其索引的定义,以确定是否快速这样做的方式。具体来说,name上是否有索引?如果有一个索引,它有多大的选择性?桌子有多大?超过100K的记录?一百多万?如果不了解这些细节,就很难排除故障。