diff --git a/include/upgrader/streams/core/f5692e24-4323a6a8.patch.sql b/include/upgrader/streams/core/f5692e24-4323a6a8.patch.sql
index c3bc8ccc3a34347bd98745a7cd3eab026d9996a0..ee2296eb5754404acf176b006b250529554a3f55 100644
--- a/include/upgrader/streams/core/f5692e24-4323a6a8.patch.sql
+++ b/include/upgrader/streams/core/f5692e24-4323a6a8.patch.sql
@@ -40,6 +40,26 @@ ALTER TABLE `%TABLE_PREFIX%faq_category`
   CHANGE `created` `created` datetime NOT NULL,
   CHANGE `updated` `updated` datetime NOT NULL;
 
+-- There was a major goof for osTicket 1.8.0 where the installer created a
+-- `form_id` column in the `%filter` table; however, the upgrader neglected
+-- to add the column. Therefore, users who have upgraded from a version
+-- previous to 1.8.0 will not have the `form_id` column in their database
+-- whereas users who installed osTicket >= v1.8.0 and upgraded will have the
+-- column. Since MySQL has no concept of `ADD COLUMN IF NOT EXISTS`, this
+-- dynamic query will assist with adding the column if it doesn't exist.
+SET @s = (SELECT IF(
+    (SELECT COUNT(*)
+        FROM INFORMATION_SCHEMA.COLUMNS
+        WHERE table_name = '%TABLE_PREFIX%filter'
+        AND table_schema = DATABASE()
+        AND column_name = 'form_id'
+    ) > 0,
+    "SELECT 1",
+    "ALTER TABLE `%TABLE_PREFIX%filter` ADD `form_id` int(11) unsigned NOT NULL default '0' AFTER `sla_id`"
+));
+PREPARE stmt FROM @s;
+EXECUTE stmt;
+
 ALTER TABLE `%TABLE_PREFIX%filter`
   ADD `topic_id` int(11) unsigned NOT NULL default '0' AFTER `form_id`;