效果圖:
實現思路一:
交叉表
另一個思路:
普通表格
缺點:無法實現內容 垂直居中顯示
准備工作
一、數據准備
DROP TABLE IF EXISTS `address_item_sex_value`; CREATE TABLE `address_item_sex_value` ( `id` int(11) NOT NULL AUTO_INCREMENT, `address` varchar(255) DEFAULT NULL, `sex` varchar(255) DEFAULT NULL, `item` varchar(255) DEFAULT NULL, `value` int(11) DEFAULT NULL, `proportion` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=34 DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of address_item_sex_value -- ---------------------------- INSERT INTO `address_item_sex_value` VALUES ('1', '城區', '男生', '指標1', '2', '50'); INSERT INTO `address_item_sex_value` VALUES ('2', '遠郊', '男生', '指標1', '3', '40'); INSERT INTO `address_item_sex_value` VALUES ('3', '近郊', '男生', '指標1', '1', '60'); INSERT INTO `address_item_sex_value` VALUES ('9', '城區', '女生', '指標1', '3', '40'); INSERT INTO `address_item_sex_value` VALUES ('10', '遠郊', '女生', '指標1', '5', '50'); INSERT INTO `address_item_sex_value` VALUES ('11', '近郊', '女生', '指標1', '4', '60'); INSERT INTO `address_item_sex_value` VALUES ('15', '城區', '男生', '指標2', '6', '70'); INSERT INTO `address_item_sex_value` VALUES ('16', '遠郊', '男生', '指標2', '3', '50'); INSERT INTO `address_item_sex_value` VALUES ('17', '近郊', '男生', '指標2', '5', '30'); INSERT INTO `address_item_sex_value` VALUES ('18', '城區', '女生', '指標2', '7', '20'); INSERT INTO `address_item_sex_value` VALUES ('19', '遠郊', '女生', '指標2', '3', '10'); INSERT INTO `address_item_sex_value` VALUES ('20', '近郊', '女生', '指標2', '6', '50'); INSERT INTO `address_item_sex_value` VALUES ('21', '城區', '男生', '指標3', '2', '50'); INSERT INTO `address_item_sex_value` VALUES ('22', '遠郊', '男生', '指標3', '3', '40'); INSERT INTO `address_item_sex_value` VALUES ('23', '近郊', '男生', '指標3', '1', '60'); INSERT INTO `address_item_sex_value` VALUES ('25', '城區', '女生', '指標3', '3', '40'); INSERT INTO `address_item_sex_value` VALUES ('26', '遠郊', '女生', '指標3', '5', '50'); INSERT INTO `address_item_sex_value` VALUES ('27', '近郊', '女生', '指標3', '4', '60'); INSERT INTO `address_item_sex_value` VALUES ('28', '城區', '男生', '指標4', '6', '70'); INSERT INTO `address_item_sex_value` VALUES ('29', '遠郊', '男生', '指標4', '3', '50'); INSERT INTO `address_item_sex_value` VALUES ('30', '近郊', '男生', '指標4', '5', '30'); INSERT INTO `address_item_sex_value` VALUES ('31', '城區', '女生', '指標4', '7', '20'); INSERT INTO `address_item_sex_value` VALUES ('32', '遠郊', '女生', '指標4', '3', '10'); INSERT INTO `address_item_sex_value` VALUES ('33', '近郊', '女生', '指標4', '6', '50');
二、設置SQL與字段
SELECT report.address_item_sex_value.id, report.address_item_sex_value.address, report.address_item_sex_value.sex, report.address_item_sex_value.item, report.address_item_sex_value.value, 1 a FROM report.address_item_sex_value order by report.address_item_sex_value.address
SQL中有一個空閑的字段a、有一個默認值。很重要、是為了X軸的交叉表做考慮
三、設計列表
設置橫列
1、選擇字段a
2、設置total(按需要、這里不需要匯總列)
設置豎列
設置交叉值
四、設計顯示
刪除橫列值
設置Column groups高度
設置高度為 0px
效果圖
設置 水平居中、垂直居中
表頭部分說一下
表頭放在ColumnHeader里面,按需自己組裝即可。
最終效果圖