Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Вложенный запрос + соединение / 10 сообщений из 10, страница 1 из 1
14.10.2015, 18:15:42
    #39076810
SergSergWolf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
Подскажите, как реализовать выборку одной строки из таблицы и соединить результат с другой? Конструкция select * from card where card.word in (select card.word from card) left join w1 on card.word=w1.word выдает ошибку. Версия mySQL 5.6
...
Рейтинг: 0 / 0
14.10.2015, 18:26:44
    #39076813
SergSergWolf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
Да, если одна строка, дополнил условием select * from card where word in (select card.word from card WHERE card.word='myword') left join w1 on card.word=w1.word
...
Рейтинг: 0 / 0
14.10.2015, 18:28:21
    #39076815
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
Не понял, что нужно. Дока - тут
...
Рейтинг: 0 / 0
14.10.2015, 18:35:34
    #39076818
SergSergWolf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
miksoft, все, разобрался, помогли на другом форуме, нужно было вот SELECT * FROM w1 WHERE word = ( SELECT word FROM card WHERE word = 'myword')
...
Рейтинг: 0 / 0
14.10.2015, 18:40:27
    #39076823
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
SergSergWolfSELECT * FROM w1 WHERE word = ( SELECT word FROM card WHERE word = 'myword')Если подзапрос выдаст более одной записи, то будет ошибка.
...
Рейтинг: 0 / 0
14.10.2015, 18:44:29
    #39076828
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
SergSergWolfнужно было вот
Код: sql
1.
SELECT * FROM w1 WHERE word = ( SELECT word FROM card WHERE word = 'myword')


Убийственный запрос... жестокий и бессмысленный...
И ошибочный. Ожидайте
Код: sql
1.
ERROR 1242 (21000): Subquery returns more than 1 row
...
Рейтинг: 0 / 0
14.10.2015, 18:50:06
    #39076833
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
AkinaУбийственный запрос... жестокий и бессмысленный...Да почему же? Вполне имеет право на жизнь, если от "more than 1 row" есть гарантия.
Хотя, конечно, другой человек, которому выпадет это поддерживать, удивится.
...
Рейтинг: 0 / 0
14.10.2015, 20:28:54
    #39076927
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
miksoftДа почему же? Вполне имеет право на жизнь, если от "more than 1 row" есть гарантия.Да тут дело даже не в "more than 1 row". Просто сравните секции select и where в подзапросе
...
Рейтинг: 0 / 0
16.10.2015, 15:41:11
    #39078733
ASD_ROJD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
tanglir,

SELECT * FROM w1 WHERE word = ( SELECT word FROM card WHERE word = 'myword')

а если вот так ?
select w1.field1,w1.field2,card.word from w1,card where(w1.word=card.word)and(card.word = 'myword')
по идее как то так может с кавычками что то напутал
...
Рейтинг: 0 / 0
19.10.2015, 07:25:03
    #39079625
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вложенный запрос + соединение
ASD_ROJDа если вот так ?а если просто вот так? как говорится, найдите 10 отличий (кроме того, что ваш запрос может вылететь с more than one row)
Код: sql
1.
SELECT * FROM w1 WHERE word = 'myword'
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Вложенный запрос + соединение / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]