我有一个包含列的表
[a1,a2,a3,a4,a5....an]
所有值都是数字。我想要一个返回的咨询:
[a1,a2,a3,a4,a5....an, S]
其中S = a1 + a2 + a3 + ... + a
如果不在S计算中指定列名,是否可以这样做? (如果添加或删除某些列,则不要更改该部分)
无论如何,我能用到最好的解决方案吗?
提前致谢
答案 0 :(得分:2)
无法省略命名所有列。此外,您正在努力解决如何使用关系数据库的问题。
而是创建一个具有metacolumns的表,例如:
CREATE TABLE `tableA` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
`col_index` int UNSIGNED NOT NULL,
`value` int NOT NULL,
...
);
检索等效的a5
:
SELECT value
FROM `tableA`
WHERE col_index = 5 AND (whatever selects the proper rows)
答案 1 :(得分:1)
SELECT a1, a2, a3, ... , an, (a1 + a2 + ... + an) AS S FROM yourColumn.