You can use the `UninstallInterface` of your module to drop the tables during uninstall process:

**app/code/Vendor/Module/Setup/Uninstall.php**:

    <?php
    
    namespace Vendor\Module\Setup;
    
    use Magento\Framework\Setup\UninstallInterface;
    use Magento\Framework\Setup\SchemaSetupInterface;
    use Magento\Framework\Setup\ModuleContextInterface;
    
    class Uninstall implements UninstallInterface
    {
        /**
         * Module uninstall code
         *
         * @param SchemaSetupInterface $setup
         * @param ModuleContextInterface $context
         * @return void
         */
        public function uninstall(
            SchemaSetupInterface $setup,
            ModuleContextInterface $context
        ) {
            $setup->startSetup();
            $connection = $setup->getConnection();
            $connection->dropTable($connection->getTableName('your_table_name_here'));
            $setup->endSetup();
        }
    }

But this script works only when module has been installed using the **Composer**:

> Hence, it is recommended that for modules NOT installed via composer,
> manual clean up of the database and filesystem is necessary. In module
> enable/disable, the code is never removed from the filesystem, so that
> it can be used if required at a later time. Hence, it is not removed
> from the setup_module table.

([additional information here][1]).


  [1]: http://magento.stackexchange.com/questions/109737/how-to-reinstall-magento-2-extension-properly