Рассчитывайте на СОЮЗ с Eloquent в Laravel - PullRequest
0 голосов
/ 17 февраля 2020

У меня есть следующий красноречивый запрос:

$x = DB::table("x")->select("x.*");   
$y = DB::table("x")->select("x.*");   

$union = $x->union($y);

Однако, если я делаю

$union->count();

, он не может сказать:

Cardinality violation: 1222 The used SELECT statements have a different number of columns

Пожалуйста, обратите внимание, я ' m использует таблицу x дважды для объединения.

Из того, что я понимаю, это применение счетчика к первой таблице, а не ко всему объединению.

1 Ответ

0 голосов
/ 17 февраля 2020

Попробуйте это:

$x = DB::table("x")->select("x.*")->get();
$y = DB::table("x")->select("x.*")->get();

$union = $x->union($y);
...