powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как переписать запрос под ms sql ?
5 сообщений из 5, страница 1 из 1
Как переписать запрос под ms sql ?
    #39969840
Romanov-krd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть запрос выборки данных из Терадаты. Как его переделать под ms sql. В ms sql нету же QUALIFI COUNT

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
select	
	CFO_TREE.ROOT_PRN_ID	   C1_CFO_ID_HM,
	CFO_TREE.ROOT_CODE	   C2_CODE_HM,
	CFO_TREE.ROOT_DESCRIPTION	   C3_DESCRIPTION_HM,
	CFO_TREE.CFO_ID	   C4_CFO_ID_CHILD,
	CFO_TREE.CODE	   C5_CODE_CHILD,
	CFO_TREE.DESCRIPTION	   C6_DESCRIPTION_CHILD
from	DEV_DB_HYP.V_CFO_TREE   CFO_TREE
QUALIFY COUNT(CFO_TREE.CFO_ID)OVER(PARTITION BY CFO_TREE.ROOT_PRN_ID, CFO_TREE.DIVISION_PATTERN_ID)>1

ORDER BY CFO_TREE.ROOT_PRN_ID, CFO_TREE.DESCRIPTION
...
Рейтинг: 0 / 0
Как переписать запрос под ms sql ?
    #39969846
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Romanov-krd
Есть запрос выборки данных из Терадаты. Как его переделать под ms sql. В ms sql нету же QUALIFI COUNT

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
select	
	CFO_TREE.ROOT_PRN_ID	   C1_CFO_ID_HM,
	CFO_TREE.ROOT_CODE	   C2_CODE_HM,
	CFO_TREE.ROOT_DESCRIPTION	   C3_DESCRIPTION_HM,
	CFO_TREE.CFO_ID	   C4_CFO_ID_CHILD,
	CFO_TREE.CODE	   C5_CODE_CHILD,
	CFO_TREE.DESCRIPTION	   C6_DESCRIPTION_CHILD
from	DEV_DB_HYP.V_CFO_TREE   CFO_TREE
QUALIFY COUNT(CFO_TREE.CFO_ID)OVER(PARTITION BY CFO_TREE.ROOT_PRN_ID, CFO_TREE.DIVISION_PATTERN_ID)>1

ORDER BY CFO_TREE.ROOT_PRN_ID, CFO_TREE.DESCRIPTION



И конечно каждый разработчик MSSQL должен знать, что делает QUALIFI COUNT в Терадате
...
Рейтинг: 0 / 0
Как переписать запрос под ms sql ?
    #39969848
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Romanov-krd,


вы лучше предоставьте структуру используемых таблиц, минимальный набор данных и выходной набор какой хотите получить.
...
Рейтинг: 0 / 0
Как переписать запрос под ms sql ?
    #39969853
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msLex,

QUALIFY

an introduction to a conditional clause that, similar to HAVING, further filters rows from a WHERE clause. The major difference between QUALIFY and HAVING is that with QUALIFY the filtering is based on the result of performing various ordered analytical functions on the data.

Но заменить не прокатит QUALIFY -> HAVING


Вычислите это в подзапросе,

COUNT(CFO_TREE.CFO_ID)OVER(PARTITION BY CFO_TREE.ROOT_PRN_ID, CFO_TREE.DIVISION_PATTERN_ID) AS C

в WHERE сравните

WHERE C > 1
...
Рейтинг: 0 / 0
Как переписать запрос под ms sql ?
    #39969854
londinium
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я бы попробовал как-то так
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
WITH CTE AS
(
   select	
	CFO_TREE.ROOT_PRN_ID	   C1_CFO_ID_HM,
	CFO_TREE.ROOT_CODE	   C2_CODE_HM,
	CFO_TREE.ROOT_DESCRIPTION	   C3_DESCRIPTION_HM,
	CFO_TREE.CFO_ID	   C4_CFO_ID_CHILD,
	CFO_TREE.CODE	   C5_CODE_CHILD,
	CFO_TREE.DESCRIPTION	   C6_DESCRIPTION_CHILD,
        COUNT(CFO_TREE.CFO_ID)OVER(PARTITION BY CFO_TREE.ROOT_PRN_ID, CFO_TREE.DIVISION_PATTERN_ID)AS CNTT
       from	DEV_DB_HYP.V_CFO_TREE   CFO_TREE
)
SELECT C.*
FROM CTE AS C
WHERE C.CNTT>1 
ORDER BY CFO_TREE.ROOT_PRN_ID, CFO_TREE.DESCRIPTION
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как переписать запрос под ms sql ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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