Changes between Version 1 and Version 2 of Ticket #1175, comment 7


Ignore:
Timestamp:
Jun 9, 2023, 10:45:47 AM (18 months ago)
Author:
Denis_N

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #1175, comment 7

    v1 v2  
    1 drop procedure mismatchQueryWithoutOtkRows;
    2 
    3 DELIMITER }
    4 
    5 CREATE PROCEDURE mismatchQueryWithoutOtkRows(min int, max int, searchName varchar (100), searchSerial varchar (100), searchComment varchar (10000)) READS SQL DATA
    6 BEGIN
    7 set @prevtotal := 0;
    8 set @mintotal := 0;
    9 select * from (select *, @mintotal as mintotal, @prevtotal := @mintotal - total as prevtotal from
    10 (select products.serial, history.uid, history.date, hist1.total from history inner join
    11 (select uid, count(uid) as total from history where (type_write = "mismatch" or type_write = 'record'
    12 or type_write = "repair" or (type_write = "testing" and status = "fail")) and comment is not null and  comment != '' group by uid) as hist1 on history.uid = hist1.uid
    13 inner join products on products.uid = history.uid where (products.name like searchName
    14 and products.serial like searchSerial and history.comment like searchComment) and (history.uid, history.date) in
    15 (select uid, max(date) from history where (type_write = "mismatch" or type_write = 'record' or type_write = "repair" or
    16 (type_write = "testing" and status = "fail") or `history`.type_write = 'record') and history.comment like searchComment and comment is not null and  comment != '' group by uid)
    17 group by products.serial, history.uid, history.date, hist1.total order by history.date desc) as hist2
    18 where (@mintotal := @minTotal + total)) as hust2 where hust2.mintotal > min and hust2.prevtotal < max;
    19 
    20 END}
    21 DELIMITER ;