2013-12-10 3 views
0

enter image description hereMysql Multiple присоединяется

Я пытаюсь получить этот запрос работать.

Кажется, что я работаю, пока не присоединяюсь к таблице альбомов, когда все данные исчезают.

Может кто-нибудь объяснить это? enter image description here

enter image description here

альбом стол ТоварыЗаказа стол enter image description here

enter image description here

стол Продукт

+1

Имеются ли у отобранных продуктов идентификаторы альбомов? –

+1

вы можете показать нам свой альбомный стол. похоже, у вас нет соответствующего альбома с продуктами. albumid. –

+0

Каково содержимое таблицы альбомов? – Raiyan

ответ

0

в вашем первом запросе, используя «JOIN», поэтому результатов нет. , если вы хотите получить результаты, возможно, вы можете использовать «LEFT JOIN»

0

Я думаю, вы ТоварыЗаказа табличные данные получили problem.Join таблица должна соответствовать всем обусловливающих данные будут выбраны, если одно из состояний соединения не имеет значения, данные не будут выбраны. Но в таблице OrderItems отображается либо song_id null, либо album_id null, но вы sql mean song_id и match_id соответствуют только полученным данным. Случайно измерьте song_id и album_id, столбец не равен нулю и соответствует

enter image description here

+0

в какой таблице? – user3075549

+0

, так как у вас элемент OrderItems получил song_id, album_id и product_id, почему вы все не присоединяетесь к условию, чтобы указать OrderItems? – user2594443

+0

Я сменил songid и albumid на не null, который изменил все значения null на 0., но я получаю тот же результат – user3075549

0

Проблема заключается в том, что вы присоединяетесь к таблице композиций. В вашей таблице продуктов идентификатор песни является нулевым для единственной записи с ордером альбома, который выполняет внутреннее соединение и, следовательно, удаляет запись.

Мое предложение состояло в том, чтобы сделать левое соединение как на столе песни, так и на альбоме, чтобы посмотреть, с чем вы работаете.

Смежные вопросы