diff --git a/lib/knex.js b/lib/knex.js
index <HASH>..<HASH> 100644
--- a/lib/knex.js
+++ b/lib/knex.js
@@ -200,10 +200,12 @@ function explainAfterQuery (app, knex) {
   knex.on('query-response', (_response, { sql, bindings }) => {
     sql = knex.client._formatQuery(sql, bindings).trim();
     if (haveQueryPlan(sql)) {
-      knex.raw(`explain ${sql}`).then(result => {
-        const explains = helper.rawResult(knex.dialect, result);
-        app.knexLogger.info('[egg-knex] explains of %s\n=====> result: %j', sql, explains);
-      });
+      knex.raw(`explain ${sql}`)
+        .then(result => {
+          const explains = helper.rawResult(knex.dialect, result);
+          app.knexLogger.info('[egg-knex] explains of %s\n=====> result: %j', sql, explains);
+        })
+        .catch(() => app.knexLogger.info('[egg-knex] Whoops! Explain does\'n work with:', sql));
     }
   });
 }
fix: raise explain exception

  *  Mysql <I> only support SELECT statement