В таблице 21 строка. 7 - на 2011 год, 7 - на 2012 год, а остальные 7 - на 2013 год. Я хочу получить 7-дневный 7-летний рекорд.Результаты SQL-запроса разные в разных средах
SELECT S1, S2, S1 * S2 AS M
FROM BLGND
WHERE DID = @dID AND
PMID = @pmID AND
yearr IN (SELECT MAX(yearr) AS y FROM BLGND AS BLGND_1)
Я успешно приведу строки последнего года с запросом выше в среде MS Visual Studio. Но когда я запускаю запрос на странице ASP.NET, он приносит все 21 запись.
Иными словами, yearr IN (SELECT MAX(yearr) AS y FROM BLGND AS BLGND_1)
не имеет значения. Тип
yearr
столбца является int
Что может быть проблема? ИЛИ есть лучший запрос, который вы знаете?
Почему положение, когда вы знаете, год, и вы ожидаете, что один год на поиск? Кстати, я думаю, что YEAR зарезервированное слово – Steve
Что такое тип данных 'year'? Используется просто '[year] = (SELECT MAX ([year]) FROM BLGND)' make any diff – MikeSmithDev
Вы должны были сделать некоторую ошибку при выполнении запроса из ASP.NET, это должно работать (хотя вы могли бы использовать '=' вместо 'IN' в том месте). Если запрос выполнен правильно, разница, вероятно, связана с настройками ANSI в отношении запроса, т.е. NULL и т. Д., Где значения по умолчанию могут отличаться для VS и ASP.NET. – Luaan