速算家长端
//type 类型 1 问答 2 文章
//status 状态 1 未审核 2 审核通过 3 审核不通过
SELECT * FROM edu_parent_circle_article WHERE type=1 AND parentId in (SELECT parent_id FROM susuan.edu_parent WHERE mobile=15321895619)
SELECT * FROM edu_parent_circle_article WHERE type=1 AND parentId in (SELECT parent_id FROM susuan.edu_parent WHERE mobile=18511871111)
//我的页面,我的问答
SELECT * FROM edu_parent_circle_article WHERE type=1 AND parentId=1147388
SELECT COUNT(*) FROM edu_parent_circle_article WHERE type=1 AND parentId=1147388
SELECT COUNT(*) FROM edu_parent_circle_reply WHERE parentId=1147388
SELECT * FROM edu_parent_circle_article WHERE (1) AND (status=2) ORDER BY articleId DESC LIMIT 20
SELECT * FROM edu_parent_circle_article WHERE circleId=1 AND type=1
SELECT * FROM edu_parent_circle_article WHERE circleId=2 AND type=1
SELECT * FROM edu_parent_circle_article WHERE circleId=2 AND type=2
//接口数据校验
//首页文章&问答列表接口数据
SELECT * FROM edu_parent_circle WHERE circleId=1
SELECT * FROM edu_parent_circle WHERE circleId=3
SELECT count(DISTINCT(parentId)),circleId FROM edu_parent_circle_article GROUP BY circleId
SELECT DISTINCT(parentId) FROM edu_parent_circle_article WHERE circleId=3
SELECT * FROM edu_parent_circle_article WHERE circleId=104 AND type=2
//答复列表
SELECT * FROM edu_parent_circle_reply WHERE parentId=1147388
SELECT * FROM edu_parent_circle_reply WHERE parentId=1147388
//家长提问和回答
SELECT * FROM edu_parent_circle_article WHERE parentId=1147388
SELECT * FROM edu_parent_circle_reply WHERE articleId=83
//浏览数,PV
UPDATE edu_parent_circle_article SET readNum=readNum+1 WHERE articleId=83
//一条SQL根据家长手机号查询学生手机号,3表查询,学生端,家长端,学生家长关联关系表
select a.* from wx_edu_student as a join edu_relate_parent_student as b on a.StudentID = b.student_id join edu_parent as c on b.parent_id = c.parent_id WHERE c.mobile = 18511876666
//一条SQL根据学生手机号查询家长手机号,3表查询,学生端,家长端,学生家长关联关系表
select a.* from edu_parent as a join edu_relate_parent_student as b on a.parent_id = b.parent_id join wx_edu_student as c on b.student_id = c.StudentID WHERE c.mobile = 15321895619
//多条SQL查询如下
SELECT * FROM wx_edu_student WHERE mobile=13701240090
SELECT * FROM wx_edu_student WHERE mobile=18953427368
SELECT * FROM edu_relate_parent_student WHERE student_id=16009040
SELECT * FROM edu_parent WHERE parent_id=1791379
SELECT * FROM susuan.edu_parent WHERE mobile=15321895619
SELECT * FROM edu_parent WHERE parent_id=1691754
SELECT * FROM edu_relate_parent_student WHERE parent_id=1691754
SELECT * FROM edu_parent WHERE parent_id=1726518
SELECT * FROM edu_game_product WHERE product_id=149
SELECT * FROM edu_coupon_product WHERE user_id=79841 AND product_id=149
SELECT * FROM edu_coupon_product WHERE product_id=149
//1后台附有答案审核通过用户发起的问答,无人回答,出现在已解答tab,测试小红点接口以及99+数据的测试
drop procedure if exists edu_parent_circle_article;
delimiter //
create procedure edu_parent_circle_article()
begin
declare num int;
SET num=1;
while num < 3 do
INSERT INTO edu_parent_circle_article (parentId, circleId, type, content,status,replyNum) VALUES (1147403, 1, 1, '0114QA发起问答',2,1);
SET num=num+1;
end while;
end
//
call edu_parent_circle_article();
//SQL存储过程--两张表写在一起,内循环。LAST_INSERT_ID取最后面的id,评论回复1对1
drop procedure if exists onetoone;
delimiter //
create procedure onetoone()
begin
declare a int;
declare num int;
declare num1 int;
SET num1=1;
while num1<=99 do
INSERT INTO edu_parent_circle_article (parentId, circleId, type, content,status,replyNum) VALUES (1147452, 1, 1, 'QAls测试循环1',2,1);
SET num1=num1+1;
set a = LAST_INSERT_ID();
SET num=1;
while num <= 1 do
INSERT INTO edu_parent_circle_reply (parentId, content,articleId) VALUES (1,'QALS循环的答复测试一对一评论',a);
SET num=num+1;
end while;
end while;
end
//
call onetoone();
//SQL存储过程--两张表写在一起,内循环。LAST_INSERT_ID取最后面的id,待解答
drop procedure if exists onetoone;
delimiter //
create procedure onetoone()
begin
declare a int;
declare num int;
declare num1 int;
SET num1=1;
while num1<=98 do
INSERT INTO edu_parent_circle_article (parentId, circleId, type, content,status,replyNum) VALUES (1147452, 1, 1, '待解答to QA春娜测试提问',1,1);
SET num1=num1+1;
set a = LAST_INSERT_ID();
SET num=1;
while num <= 1 do
INSERT INTO edu_parent_circle_reply (parentId, content,articleId) VALUES (1,'答复测试-带解答。。。。。',a);
SET num=num+1;
end while;
end while;
end
//
call onetoone();
//SQL存储过程--两张表写在一起,内循环。LAST_INSERT_ID取最后面的id,评论回复1对多.replyNum与内层循环次数保持一致。构造我的答复99条数据
drop procedure if exists onetomore;
delimiter //
create procedure onetomore()
begin
declare a int;
declare num int;
declare num1 int;
SET num1=1;
while num1<=1 do
INSERT INTO edu_parent_circle_article (parentId, circleId, type, content,status,replyNum) VALUES (1147452, 1, 1, 'QA to 春娜提问',2,99);
SET num1=num1+1;
set a = LAST_INSERT_ID();
SET num=1;
while num <= 99 do
INSERT INTO edu_parent_circle_reply (parentId, content,articleId) VALUES (1147388,'99条回复测试数量',a);
SET num=num+1;
end while;
end while;
end
//
call onetomore();
//查看该家长已解答的问答数目
SELECT * FROM edu_parent_circle_article WHERE parentId=1147388 AND STATUS=2
//插入99条问答数据,待解答数据测试--后台未审核。status 状态 1 未审核 2 审核通过 3 审核不通过
drop procedure if exists circle_article;
delimiter //
create procedure circle_article()
begin
declare num int;
SET num=1;
while num < 3 do
INSERT INTO edu_parent_circle_article (parentId,circleId,type,content,status,replyNum,readNum,isDelete,createTime,updateTime)
VALUES (1147388,1,1,'0112待解答Status为1 QA李杉-----测试,数据',1,0,0,0,'2018-01-12 15:47:14','2018-01-12 15:47:14');
SET num=num+1;
end while;
end
//
call circle_article();
//我的回答
drop procedure if exists my_reply;
delimiter //
create procedure my_reply()
begin
declare num int;
declare a int;
SET num=1;
set a = LAST_INSERT_ID();
while num < 3 do
INSERT INTO edu_parent_circle_reply (parentId, content,articleId) VALUES (1147388,'我的99条回复测试数量',a);
SET num=num+1;
end while;
end
//
call my_reply();
//查看该家长待解答的问答数目
SELECT * FROM edu_parent_circle_article WHERE parentId=1147388 AND STATUS=1
//DELETE FROM edu_parent_circle_article
//DELETE FROM edu_parent_circle_rel
//DELETE FROM edu_parent_circle_reply
//DELETE FROM edu_parent_circle_report
UPDATE edu_parent_circle_article SET readNum=readNum+1 WHERE articleId=455
DELETE FROM edu_parent_circle_article WHERE type=1
DELETE FROM edu_parent_circle_reply
//首页文章&问答列表。未加入任何圈子,从3个圈子筛选出5条,按发布时间倒叙。家长圈123
SELECT * FROM edu_parent_circle_article WHERE circleId=1 AND status=2 ORDER BY articleId DESC LIMIT 5
SELECT * FROM edu_parent_circle_article WHERE circleId=2 AND status=2 ORDER BY articleId DESC LIMIT 5
SELECT * FROM edu_parent_circle_article WHERE circleId=3 AND status=2 ORDER BY articleId DESC LIMIT 5
//加入家长圈
SELECT * FROM edu_parent_circle_rel WHERE parentId=1147474 ORDER BY id
SELECT * FROM edu_parent_circle_rel WHERE parentId=1147474 ORDER BY id
SELECT COUNT(*) FROM edu_parent_circle_article WHERE parentId=1147474 AND status=1 AND isDelete=0
SELECT COUNT(*) FROM edu_parent_circle_reply WHERE parentId=1147474 AND isDelete=0
SELECT COUNT(*) FROM edu_parent_circle_article WHERE type=2 AND circleId=1
SELECT COUNT(*) FROM edu_parent_circle_article WHERE type=2 AND circleId=2
SELECT COUNT(*) FROM edu_parent_circle_article WHERE type=2 AND circleId=3
//单个家长圈,文章列表 类型 (必填) // 1 问答 2 精读。返回20条数据
SELECT * FROM edu_parent_circle_article WHERE circleId=1 AND type=1 AND status=2 ORDER BY articleId DESC LIMIT 20
SELECT * FROM edu_parent_circle_article WHERE circleId=1 AND type=2 AND status=2 ORDER BY articleId DESC LIMIT 20
//提问回答,答复数校验
INSERT INTO edu_parent_circle_reply (parentId, articleId, content, toParentId, toReplyId) VALUES (1147474, 470, '给黑胡椒即可', 0, 0)
UPDATE edu_parent_circle_article SET replyNum=replyNum+1 WHERE articleId=470
//家长问答,每次返回20条数据测试
SELECT * FROM edu_parent_circle_article WHERE circleId=1 AND status=2 ORDER BY articleId DESC LIMIT 20
//我的回答,分页数据测试,nextFromId每20个replyId为1个返回,倒叙返回20条数据
SELECT * FROM edu_parent_circle_reply WHERE parentId=1147388 AND isDelete=0 AND replyId < 730 ORDER BY replyId DESC LIMIT 20
SELECT * FROM edu_parent_circle_reply WHERE parentId=1147388 AND isDelete=0 AND replyId < 710 ORDER BY replyId DESC LIMIT 20
SELECT * FROM edu_parent_circle_reply WHERE parentId=1147388 AND isDelete=0 AND replyId < 690 ORDER BY replyId DESC LIMIT 20
//文章阅读计数-articleId=692为问答,type 类型 1 问答 2 文章
UPDATE edu_parent_circle_article SET readNum=readNum+1 WHERE articleId=692
SELECT readNum FROM edu_parent_circle_article WHERE articleId=692
//文章阅读计数-articleId=443为文章,type 类型 1 问答 2 文章
UPDATE edu_parent_circle_article SET readNum=readNum+1 WHERE articleId=443
SELECT readNum FROM edu_parent_circle_article WHERE articleId=443
SELECT parent_id FROM susuan.edu_parent WHERE mobile=15321895619
//status 改为0 lastTime 改为30天之前的时间,清除缓存del "patriarch:parentAlertNoParentId:1147388_*"
UPDATE edu_parent_alert_log SET `status`=0,lastTime=FROM_UNIXTIME(UNIX_TIMESTAMP(lastTime)-2592000-10000) WHERE parentId=1147388
UPDATE edu_parent_alert_log SET `status`=0,lastTime=Date_sub(lastTime,interval 1 month ) WHERE parentId=1147388
UPDATE edu_parent_alert_log SET `status`=0,lastTime=Date_sub(lastTime,interval 31 day ) WHERE parentId=1147388
SELECT * FROM match_match as A INNER JOIN match_vls_result as B ON A.MatchID=B.MatchID AND A.MatchID in(10016,9979,9998)
SELECT sum(AnswerScore) FROM match_vls_result WHERE MatchID=10082
//毫秒转换为分钟
SELECT sum(TimeUsed/1000/60) FROM match_vls_record WHERE MatchID=9979 AND StudentID=1573051
//全国排名赛nationrank
drop procedure if exists `nationrank`;
delimiter //
create procedure nationrank()
begin
declare num int;
SET num=1;
while num < 1002 do
INSERT INTO match_student (MatchID,MatchType,Score,IsJoin,PkTimes) VALUES (10145,3,67,1,1);
SET num=num+1;
end while;
end
//
call nationrank();
SELECT * FROM match_student WHERE MatchID=10145;
UPDATE match_student SET studentID=MatchStudentID-303414+10001 where matchID=10145
UPDATE match_student SET score=10 where matchID=10145
UPDATE match_match SET EndDate="2017-06-10 16:00:00",StopTime="16:00:00",LastStopTime="2017-06-10 16:00:00" WHERE MatchID=10103;
SELECT * FROM match_match as a INNER JOIN match_student as b on a.MatchID=b.MatchID AND a.MatchID=9995;
//GROUP_CONCAT函数返回一个字符串结果,该结果由分组中的值连接组合而成
SELECT group_concat(MatchStudentID) FROM match_student WHERE MatchID=9995
UPDATE match_student SET score=50,IsJoin=1,PkTimes=1 WHERE MatchStudentID in(218398,218476,218531,218875)
//全国单词测验造数据1000条,非补测数据。是否补测,0否,1是,测验专用
drop procedure if exists `nationtest`;
delimiter //
create procedure nationtest()
begin
declare num int;
SET num=1;
while num < 1000 do
INSERT INTO match_student (MatchID,MatchType,Score,IsJoin,PkTimes,TimeUsed,RewardCoin,RewardStatus) VALUES (10163,7,61,1,19,31781,9,1); SET num=num+1;
end while;
end
//
call nationtest();
//全国单词测验造数据1000条,补测数据。是否补测,0否,1是,测验专用
drop procedure if exists `nationtestsupply`;
delimiter //
create procedure nationtestsupply()
begin
declare num int;
SET num=1;
while num < 10 do
INSERT INTO match_student (MatchID,MatchType,Score,IsJoin,PkTimes,TimeUsed,RewardCoin,RewardStatus,IsSupply) VALUES (10103,7,87,1,6,31781,9,1,1);
SET num=num+1;
end while;
end
//
call nationrank();
//插入1000条数据,studentID去重,但需要studentID不为空且从base_student取1000。需要设置为自增id+1,不能设置studentID+1
UPDATE match_student SET studentID=MatchStudentID-306240+10151,PkTimes=19 where matchID=10163
UPDATE match_student SET Score=88 WHERE
SELECT StudentID FROM match_student where MatchID=10103;
SELECT COUNT(*) FROM match_student WHERE MatchID=10163;
SELECT * FROM match_student WHERE MatchID=10163 AND IsSupply=1 AND Score=100;
DELETE FROM match_student WHERE MatchID=10151 LIMIT 1000;
SELECT * FROM match_match WHERE MatchID=10163 ;
UPDATE match_match SET EndDate="2017-06-10 16:00:00",StopTime="16:00:00",LastStopTime="2017-06-10 16:00:00" WHERE MatchID=10103;
UPDATE match_match SET EndDate="2017-06-10 22:00:00",StopTime="22:00:00",LastStopTime="2017-06-10 22:00:00" WHERE MatchID=10103;
SELECT * FROM base_student LIMIT 10;
drop procedure if exists `nationtestB`;
delimiter //暂时无用
create procedure nationtestB()
begin
declare num int;
SET num=1;
while num < 10 do
UPDATE match_student SET StudentID=(SELECT studentID FROM (SELECT studentID,count(*) FROM base_student order by studentID desc limit num) as A) where MatchStudentID=
(SELECT matchStudentID FROM (SELECT matchStudentID,count(*) FROM match_student where matchID=10015 order by matchStudentID desc limit num) as B);
SET num=num+1;
end while;
end//
call nationtestB();
UPDATE match_student SET studentID=102094 where matchID=9995
SELECT distinct StudentID FROM match_student where matchID=10015;matchStudentID in (300142,300141,300140,300139);(SELECT matchStudentID FROM match_student where matchID=10015 order by matchStudentID desc limit 10);
//单词列表为非视听说题型 /match/vls-train/is-vls-train? isVls 1:视听说 0:非视听说
SELECT DISTINCT QuestionDim,wordID FROM word_question WHERE wordID NOT in ( SELECT DISTINCT wordID from word_question WHERE QuestionDim in (10,11,12,13) )
//怪物血量除以100
update monster_monster set InitHp=InitHp/100
update monster_monster set InitHp=InitHp*10
update monster_monster set InitHp=InitHp/25
select InitHp from monster_monster
//如果用GROUP_CONCAT函数,读取的StudentID为字符串,所以取得是第一个
SELECT * from base_user WHERE UserID in (SELECT GROUP_CONCAT(StudentID) from base_student_class WHERE ClassID=54629)
//单独的子查询是可以的,如果是使用group_concat 的话,得有group by才能运行处结果。若是没有使用group by时使用聚合函数,相当于把所有的行都归于一组来进行处理。除非特殊说明。一般使用聚合函数会忽略掉NULL
update task_template set Title='在班级锦标赛中获得1场胜利' where TemplateID=4 limit 1;
update带limit是安全做法,可以限制最大更新数据行数。不过这种写法有问题的
CREATE TABLE a
(col1 int,
col2 int);
CREATE TABLE b
(col1 int,
col2 int);
INSERT INTO a VALUES (1,1),(2,2);
INSERT INTO b VALUES (2,2);
SELECT * FROM a WHERE EXISTS (select 1 FROM b WHERE a.col2=b.col2);
https://zhidao.baidu.com/question/314655739.html
linux下的mysql就能查询了
DROP TABLE a;
CREATE TABLE a
(col BLOB);
INSERT INTO a VALUES ('123'),(123);
mysql> select * from a;
+------+
| col |
+------+
| 123 |
| 123 |
+------+
2 rows in set (0.00 sec)