【发布时间】:2012-12-24 14:36:17
【问题描述】:
我想知道有没有办法从我的数据库中的表中选择除一个字段之外的所有字段。
我知道我可以描述选择查询中的字段名称。
例如:
SELECT fieldname1, fieldname2, fieldname3, fieldname4 FROM tablename;
但我的问题是,有没有办法以简单的方式做到这一点......像这样
SELECT * FROM tablename EXCEPT(fieldname3);
我正在使用 MySQL 和 Zend 框架。
【问题讨论】:
-
@sirwilliam 如果你要将一个数字增加 5,你会写一个 += 5;因为你懒得打出 a = a+1+1+1+1+1?编写代码通常与可读性有关。如果在您的 SQL 查询中您想要选择除一列之外的所有列,那么与您愿意完成的最接近的形式确实类似于
SELECT * EXCEPT lame_field FROM ... -
这很愚蠢,他们没有更简单的方法来执行此操作,例如 SELET * ,~id ...等,当我们最常使用 SELECT FROM 创建表时,我们想省略自动 ID,
-
我完全同意 mahen3d ,wtf?我在 SQL 中有 2 个共享相同结构的表。如果将来我希望修改/添加/删除列,我不想在代码的某些部分也添加这些列。它的可维护性较差,而且是一个会导致您的应用出现错误的坏主意。
标签: php mysql database zend-framework select