Mysql php查询SELECT星的改进...初学者容易

时间:2010-12-22 12:01:02

标签: php mysql

我有一个包含以下字段的表格:

ID,tomato1,tomato2,tomato3

tomato1,2,3是文字列。 每个tomato1条目都是唯一的,ID是autoincrement int,其他所有条目都是VARCHAR 我只给了番茄1。

我正在使用查询:

SELECT * WHERE tomato1='whatever'

我听到互联网上的一些人说不要使用SELECT *,所以我想问一下,这是一个不好的方法吗?是否有更有效的查询代码/方法?

4 个答案:

答案 0 :(得分:1)

星号表示您始终选择此表中的所有列。因此,如果您只想输入tomato3,则查询应为:SELECT tomato3 FROM tomatoes WHERE tomato1='whatever'

答案 1 :(得分:0)

通常只查询您需要的数据,因为它限制了传输数据的数量,因此SELECT ID, tomato2, tomato3 WHERE tomato1 = 'whatever'可能更好。

答案 2 :(得分:0)

主要是为了检索比所需更多的数据,从而影响性能。您是否使用了所有列中的数据? 它也可以帮助代码维护,因为你明确地调用所有内容而不是通用的' *'。

答案 3 :(得分:0)

此外,如果您将来更改表,并且您的应用程序只期望当前存在的字段,SELECT *将带来应用程序不期望的字段。 使用命名字段的SELECT更具有可持续性。