diff --git a/Query/Builder.php b/Query/Builder.php
index <HASH>..<HASH> 100755
--- a/Query/Builder.php
+++ b/Query/Builder.php
@@ -820,6 +820,24 @@ class Builder {
 	}
 
 	/**
+	 * Add a raw "order by" clause to the query.
+	 *
+	 * @param  string  $sql
+	 * @param  array  $bindings
+	 * @return \Illuminate\Database\Query\Builder|static
+	 */
+	public function orderByRaw($sql, $bindings = array())
+	{
+		$type = 'raw';
+
+		$this->orders[] = compact('type', 'sql');
+
+		$this->bindings = array_merge($this->bindings, $bindings);
+
+		return $this;
+	}
+
+	/**
 	 * Set the "offset" value of the query.
 	 *
 	 * @param  int  $value
diff --git a/Query/Grammars/Grammar.php b/Query/Grammars/Grammar.php
index <HASH>..<HASH> 100755
--- a/Query/Grammars/Grammar.php
+++ b/Query/Grammars/Grammar.php
@@ -461,6 +461,8 @@ class Grammar extends BaseGrammar {
 
 		return 'order by '.implode(', ', array_map(function($order) use ($me)
 		{
+			if (isset($order['sql'])) return $order['sql'];
+
 			return $me->wrap($order['column']).' '.$order['direction'];
 		}
 		, $orders));
added orderByRaw method to query builder.