Unfortunately your solution is not a perfect solution. There is no effective way to track files based solely on filesize: it is possible for two completely different files to have the same file size, and it is possible the exact same file to be packaged in two different ways (eg: one ZIP, one RAR) and therefore have two different file sizes.
When a trigger matches a query, it is moved to the download queue only if the file does not already exist in the DB, at which point an entry for the file is added to the DB. This effectively means that file-tracking is done using the hash (such that no hash is downloaded twice, unless you remove it from the DB). It may be arcane, but as soon as a matching query is added to the download, you can simply delete the download -- the item is still saved in the DB, and Share knows not to download it again (not that it was downloaded in the first place, since you deleted the download).
Of course, keep in mind that queries made inside Share are never accurate. A much better method is to use a trigger DB site like keydb.jpn.ch or sharedb.info. Perform your search there. With keydb, choose the コピペ用 option, then select and copy the entire list. With sharedb, just click the このページのキー情報を全部コピー button at the end. Then in Share, go to the triggers tab and click Paste. All the files will be added as separate triggers, and as soon as one of them is found and moved to the downloads, you can go back and delete any other similar triggers. It may not be automated, but it ensures you won't download duplicate files, and you won't mistakenly skip unique files that have the same filesize.