测试SQL设计Mysql

版权声明:东方不败 https://blog.csdn.net/weixin_42498050/article/details/81543560

速算家长端

//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)

猜你喜欢

转载自blog.csdn.net/weixin_42498050/article/details/81543560
今日推荐