Запрос с объединением двух таблиц
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Запрос с объединением двух таблиц Expand / Collapse
Автор
Сообщение
08.08.2006 10:32


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 27.06.2008 14:10
Сообщ.: 275, Visits: 865
Подскажите где я допустил ошибку?

Я вывожу одно поле из таблицы вот таким образом:

SELECT DateTime
FROM Automatlog
WHERE DateTime >= CONVERT(datetime, '30.08.2005', 103) and DateTime
И получаю одну запись, как идолжно быть. А когда я соединяю две таблицы, то эта запись не выводится. Я писал это так:

SELECT al.DateTime as alDateTime, ...
FROM Automatlog al JOIN Automats a on al.Automat = a.AutomatNumber
WHERE DateTime >= CONVERT(datetime, '30.08.2005', 103) and DateTime
И так:

SELECT al.DateTime as alDateTime, ...
FROM Automatlog al JOIN Automats a on al.Automat = a.AutomatNumber
WHERE alDateTime >= CONVERT(datetime, '30.08.2005', 103) and alDateTime

И так:

SELECT al.DateTime as alDateTime, ...
FROM Automatlog al JOIN Automats a on al.Automat = a.AutomatNumber
WHERE al.DateTime >= CONVERT(datetime, '30.08.2005', 103) and al.DateTime
В чем фишка?
Сообщ. #902259
08.08.2006 10:49


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 29.10.2007 14:45
Сообщ.: 1 833, Visits: 16 863
По всей видимости условие al.Automat = a.AutomatNumber не выполняется.

Попробуй сделать LEFT JOIN.

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

И еще. Перед заданием вопросов по SQL было бы совсем неплохо предоставлять схему данных.

Сообщ. #902263
08.08.2006 11:14


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 27.06.2008 14:10
Сообщ.: 275, Visits: 865
Спасибо большое!
Получилось, причем работает только с обоими замечаниями (LEFT и [])
Сообщ. #902266
08.08.2006 11:14


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 27.03.2008 15:26
Сообщ.: 701, Visits: 7 028
Дико извиняюсь...

WHERE DateTime >= CONVERT(datetime, '30.08.2005', 103) and DateTime

Это что за условие?

Сообщ. #902267
08.08.2006 11:18


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 29.10.2007 14:45
Сообщ.: 1 833, Visits: 16 863
2Автор: Читайте книжки, ищите различия между JOIN и LEFT JOIN. Поверьте, они есть.
2Silver: Как я понимаю, там какое-то еще условие, не поместившееся.
Сообщ. #902270
08.08.2006 11:23


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 27.06.2008 14:10
Сообщ.: 275, Visits: 865
Различия между JOIN и LEFT JOIN я знаю просто я уже ставил LEFT JOIN и все равно не работало, я совсем забыл про [скобки], если бы я с самого начала учел эти два нюанса... видно что-то помешало :)
Сообщ. #902271
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl, Alexey Spirin

Время GMT +3:00, Сейчас 2:25