Не думаю, что вам нужен этот подзапрос. Потому что это из той же таблицы и того же условия.
$query = DB::table('rule_definition')
->select('id_parameter, value, code_rule, block,grouping, count')
->where(function ($q) use ($x) {
$q->where('id_parameter','=',1)
->where('value','=',$x);
})->orWhere(function ($q) use ($x) {
$q->where('id_parameter','!=',1)
->where('value','!=',$x);
})