mysql查询将两列数值相加问题

chac
  • 6.5k

如图所示:
我希望加一个total_price列,值为price+price2的和,这个应该怎么写SQL;

select * from ims_goods_1 where price!=0 and price2!=0;

图片描述

奉上SQL文件:

/*
Navicat MySQL Data Transfer

Source Server         : car
Source Server Version : 50518
Source Host           : wsy19950503.mysql.rds.aliyuncs.com:3306
Source Database       : car

Target Server Type    : MYSQL
Target Server Version : 50518
File Encoding         : 65001

Date: 2015-06-11 15:40:28
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `ims_goods_1`
-- ----------------------------
DROP TABLE IF EXISTS `ims_goods_1`;
CREATE TABLE `ims_goods_1` (
  `id` int(4) NOT NULL AUTO_INCREMENT,
  `type` tinyint(1) NOT NULL COMMENT '1为小保养,2为电瓶',
  `name` varchar(255) NOT NULL DEFAULT '' COMMENT '商品名称',
  `price` int(4) NOT NULL COMMENT '产品价格',
  `price2` int(4) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of ims_goods_1
-- ----------------------------
INSERT INTO `ims_goods_1` VALUES ('1', '1', '曼牌Mann', '70', '0');
INSERT INTO `ims_goods_1` VALUES ('2', '1', '马勒', '29', '0');
INSERT INTO `ims_goods_1` VALUES ('13', '1', '汉格斯特Hengsr', '68', '0');
INSERT INTO `ims_goods_1` VALUES ('4', '2', '嘉实多 金嘉护SN 10W-40', '152', '0');
INSERT INTO `ims_goods_1` VALUES ('5', '2', '嘉实多 磁护SN 5W-40', '248', '110');
INSERT INTO `ims_goods_1` VALUES ('6', '2', '嘉实多 极护SN 0W-40', '376', '125');
INSERT INTO `ims_goods_1` VALUES ('7', '2', '壳牌 黄喜力HX5 10W-40', '138', '0');
INSERT INTO `ims_goods_1` VALUES ('8', '2', '壳牌  灰喜力ULTRA 5W-40', '380', '0');
INSERT INTO `ims_goods_1` VALUES ('10', '2', '美孚 美孚1号 0W-40', '368', '113');

回复
阅读 15.4k
2 个回答
✓ 已被采纳

select t.*,price+price2 as total_price from ims_goods_1 t where price!=0 and price2!=0;

nettyxiong
  • 1
新手上路,请多包涵

如果这里的+换成一个比较复杂的运算,比如求这两个数的阶乘的和作为新的列,这个该怎么弄

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
你知道吗?

宣传栏