Функция с табличным значением - Порядок игнорируется в выводе

Мы переходим с SQL Server 2008 на SQL Server 2012 и сразу же заметили, что все наши функции, возвращающие табличное значение, больше не доставляют содержимое своей временной таблицы в правильно отсортированном порядке.

КОД:

INSERT INTO @Customer
        SELECT Customer_ID, Name,
        CASE 
            WHEN Expiry_Date < GETDATE() then 1 
            WHEN Expired = 1 then 1 
            ELSE 0
            END
        from Customer **order by Name**

В SQL Server 2008 эта функция возвращает клиентов, отсортированных по имени. В SQL Server 2012 он возвращает несортированную таблицу. «Порядок»игнорируется в SQL 2012.

Нужно ли нам переписывать все функции, чтобы включить sort_id, а затем сортировать их при вызове в основное приложение или есть простое решение??

24
задан Old Pro 24 January 2019 в 06:52
поделиться