libdo

Untitled

Oct 5th, 2017
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. drop table if exists question;
  2. drop table if exists answer;
  3. create table question(Question text, score int);
  4. create table answer(answer text, score int);
  5.  
  6. drop procedure if exists Searching_Answers_Question_g;
  7.  
  8. delimiter //
  9. create procedure Searching_Answers_Question_g( in inpute char (200))
  10.  
  11. begin
  12. declare done int default false;
  13. declare done1 int default false;
  14. declare a char(200);
  15. declare b int;
  16. declare c char(200);
  17. declare d int;
  18.  
  19. declare cur1 cursor for (select body, score from (select post_id from (select * from (select post_id as parent_id from (select * from post_tags
  20. where match(tag_name) against(inpute IN BOOLEAN MODE) ) as t
  21. natural join post
  22. where match(post.title) against(+inpute IN BOOLEAN MODE)
  23. and match(post.body) against(inpute in natural language mode)
  24. order by post.score desc)as N  natural join answer) as S natural join post
  25. group by parent_id
  26. having max(post.score)) as ok natural join post);
  27.  
  28. declare cur2 cursor for(select body, score from (select parent_id as post_id from (select * from (select post_id as parent_id from (select * from post_tags
  29. where match(tag_name) against(inpute IN BOOLEAN MODE) ) as t
  30. natural join post
  31. where match(post.title) against(+inpute IN BOOLEAN MODE)
  32. and match(post.body) against(inpute in natural language mode)
  33. order by post.score desc)as N  natural join answer) as S natural join post
  34. group by parent_id
  35. having max(post.score)) as ok natural join post);
  36.  
  37. declare continue handler for not found set done = true;
  38.  
  39. open cur1;
  40.     read_loop: loop
  41.         fetch cur1 into a, b;
  42.         insert into answer values (a,b);
  43.         if done then
  44.             leave read_loop;
  45.         end if;
  46.     end loop;
  47. close cur1;
  48.  
  49. open cur2;
  50.     read_loop: loop
  51.         fetch cur2 into c, d;
  52.         insert into question values (c,d);
  53.         if done then
  54.             leave read_loop;
  55.         end if;
  56.     end loop;
  57. close cur2;
  58.  
  59. select * from question;
  60. select * from answer;
  61.  
  62. drop table if exists question;
  63. drop table if exists answer;
  64.  
  65. end;
  66. //delimiter ;
  67.  
  68. -- call Searching_Answers_Question_g('python');
  69. call Searching_Answers_Question_g('how to program in python');
Add Comment
Please, Sign In to add comment