Может ли MySQL Select Subquery может вызвать проблему n+1?MySql

Форум по Mysql
Ответить
Anonymous
 Может ли MySQL Select Subquery может вызвать проблему n+1?

Сообщение Anonymous »

У меня есть какой -то случай, когда мне нужно написать один запрос SQL, но внутри этого запроса мне также нужно получить некоторые данные в другой таблице. Позвольте мне дать некоторую визуализацию. < /P>
Клиенты < /strong> таблица
| Имя | Тип | Параметры |
| -------- | -------------- | --------------------------- |
| id | Int | Первичный ключ, автоматическое приращение |
| Электронная почта | Varchar (255) | Не null |
| имя | Varchar (255) | Не null |
Адрес
таблица



name < /th>
type < /th>
Параметры < /th>
< /tr>
< /thead>


id < /td>
int < /td>
первичная клавиша, автоматическое приращение < /td>
< /tr>

customer_id < / td>
int
иностранная ключ ref: клиенты . id
< /tr>

адрес < /td>
varchar (255) < /td>
не null < /td >
< /tr>

is_default < /td>
small int < /td>
default: default: 0



Пример случая: мне нужно получить каждый Клиент вместе с их адресами по умолчанию, если я запускаю этот запрос < /p>

Код: Выделить всё

SELECT
id,
name,
(
SELECT
address
FROM addresses
WHERE
customer_id = customers.id AND
is_default = 1 LIMIT 1
) AS default_address
FROM customers;
могло бы этот запрос, чтобы сделать вопрос N+1, потому что для каждого клиента также необходимо получить свой адрес по умолчанию?
Я писал такой запрос на свои проекты много раз, и это просто для меня "можно ли вызвать n+1"? < /p>
Буду ожидать, что кто -то даст мне некоторое объяснение об этом, может быть запрос N+1 или нет. Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/794 ... n1-problem
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»