你这个需要后台处理一下才可以,直接转换比较麻烦,效率也不高。因为你需要计算出每天的开始时间和结束时间insert into newtable select employeeID,days,MAX(cardTime) as endtime,Min(cardTime) as starttime from
成都创新互联是一家专业提供江岸企业网站建设,专注与成都做网站、网站制作、HTML5建站、小程序制作等业务。10年已为江岸众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。
table group by employeeID,days; 大概就这意思,自己在调试调试吧
分两次进行不同的查询就可以实现了
先查出组员信息,比如组员数量、文章总数、评论总数等
再查出组长信息
两个查询一合并就可以了
SQL角本如下:
select a.用户名 组长, b.组员数量, b.文章总数, b.评论总数
from (select 编号, 用户名 from table_name where 角色 = '组长') a, -- 找组长信息
(select 组长,
count(1) 组员数量,
sum(文章) 文章总数,
sum(评论) 评论总数
from table_name
where 组长 is not null
group by 组长) b -- 找组员信息
where a.编号 = b.组长
1、在mysql环境,创建数据库表,
create table test_data1(id int, name VARCHAR(20), day VARCHAR(20))
2、插入测试数据,
insert into test_data1 values(1,'liu',1);
insert into test_data1 values(2,'liu',3);
insert into test_data1 values(3,'wang',1);
insert into test_data1 values(4,'wang',2);
insert into test_data1 values(4,'wang',4);
3、查询表中数据,select * from test_data1;
4、编写目标sql;
select name,
max(case when day=1 then 1 end) d_1,
max(case when day=2 then 2 end) d_2,
max(case when day=3 then 3 end) d_3,
max(case when day=4 then 4 end) d_4
from test_data1 t group by name
整理数据 :
看一下数据
拼接成Table,这里简单演示
结果展示
数字转字符
mysql SELECT CONCAT ( CAST(1 as char) , '2') AS test;
+------+
| test |
+------+
| 12 |
+------+
1 row in set (0.00 sec)
mysql SELECT CONCAT ( Convert(1, char) , '2') AS test;
+------+
| test |
+------+
| 12 |
+------+
1 row in set (0.00 sec)
字符转数字
mysql SELECT CAST('1' as SIGNED) + 100 AS test;
+------+
| test |
+------+
| 101 |
+------+
1 row in set (0.00 sec)
mysql SELECT Convert('1' , SIGNED) + 100 AS test;
+------+
| test |
+------+
| 101 |
+------+
1 row in set (0.00 sec)
1、首先打开数据库界面窗口。
2、接着按下导出向导,弹出小窗选择sql脚本文件。
3、然后在切换小窗显示表中,选择需要导出的表。
4、接着在弹出的对话框中选择字段。
5、然后在弹出的界面勾选遇到错误继续。
6、最后按下开始,执行转换sql脚本文件过程即可。