diff --git a/wp-includes/comment.php b/wp-includes/comment.php
index a4cc7e2..2b41cfd 100644
--- a/wp-includes/comment.php
+++ b/wp-includes/comment.php
@@ -303,16 +303,22 @@ class WP_Comment_Query {
 			return $cache;
 		}
 
-		$status = $this->query_vars['status'];
-		if ( 'hold' == $status ) {
-			$approved = "comment_approved = '0'";
-		} elseif ( 'approve' == $status ) {
-			$approved = "comment_approved = '1'";
-		} elseif ( ! empty( $status ) && 'all' != $status ) {
-			$approved = $wpdb->prepare( "comment_approved = %s", $status );
-		} else {
+		$statuses = (array) $this->query_vars['status'];
+		foreach ( $statuses as $status ) {
+			if ( 'hold' == $status ) {
+				$approve[] = "comment_approved = '0'";
+			} elseif ( 'approve' == $status ) {
+				$approve[] = "comment_approved = '1'";
+			} elseif ( ! empty( $status ) && 'all' != $status ) {
+				$approve[] = $wpdb->prepare( "comment_approved = %s", $status );
+			}
+		}
+		if ( ! $approve ) {
 			$approved = "( comment_approved = '0' OR comment_approved = '1' )";
+		} else {
+			$approved = "( " . implode( " OR ", $approve ) . " )";
 		}
+
 		$order = ( 'ASC' == strtoupper( $this->query_vars['order'] ) ) ? 'ASC' : 'DESC';
 
 		if ( ! empty( $this->query_vars['orderby'] ) ) {
