diff --git a/src/console/CmdProcessor.cpp b/src/console/CmdProcessor.cpp
index e40edf4916ec20053c63bf4bd916972af403411a..f5d6cadf356ff07ef74c31bbb2e302fe716b9298 100644
--- a/src/console/CmdProcessor.cpp
+++ b/src/console/CmdProcessor.cpp
@@ -338,12 +338,16 @@ void CmdProcessor::processServerCmd(folly::StringPiece cmd) {
         } else {
             curSpaceName_ = "(none)";
         }
-        printResult(resp);
-        if (resp.get_rows() != nullptr) {
+        if (resp.get_rows() && !resp.get_rows()->empty()) {
+            printResult(resp);
             std::cout << "Got " << resp.get_rows()->size()
                       << " rows (Time spent: "
                       << resp.get_latency_in_us() << "/"
                       << dur.elapsedInUSec() << " us)\n";
+        } else if (resp.get_rows()) {
+            std::cout << "Empty set (Time spent: "
+                      << resp.get_latency_in_us() << "/"
+                      << dur.elapsedInUSec() << " us)\n";
         } else {
             std::cout << "Execution succeeded (Time spent: "
                       << resp.get_latency_in_us() << "/"