powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Пустое условие при выборке данных
5 сообщений из 5, страница 1 из 1
Пустое условие при выборке данных
    #38328365
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, такое вопрос есть база DB2, сам я с ней мало знаком. Какое условие написать для того чтобы не гонять систему попросту?

Код: sql
1.
Where 0

не канает

Код: sql
1.
Where 0=1

работает, но затрачивает что то около 500 мс на это

какое условие поставить чтобы уменьшить время обработки?
...
Рейтинг: 0 / 0
Пустое условие при выборке данных
    #38329318
knudsen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dozent,

Гонять пустышкой ? это как?
а вот такая штука
SELECT * FROM SYSIBM.SYSDUMMY1 WHERE 0=1;
неужто полсекунды выполняется?

-->

SELECT * FROM SYSIBM.SYSDUMMY1 WHERE 0=1;
completed successfully.
No rows fetched


0 rows selected in 0.00 secs.
...
Рейтинг: 0 / 0
Пустое условие при выборке данных
    #38329371
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
WITH
	Payments_tmp(srvc_ptn_id,
	payment_sum) AS 
	(	SELECT
			p.srvc_ptn_id,
			SUM(p.payment_sum) AS payment_sum 
		FROM
			clinic.payment p 
		GROUP BY
			p.srvc_ptn_id ) 
SELECT
	srvc_ptn.srvc_ptn_id,
	srvc_ptn.clcase_id,
	CASE 
		WHEN contract.cntr_id IS NOT NULL 
		THEN cntr.name_short 
		WHEN contract.ptn_id IS NOT NULL 
		THEN ptn_contract.ptn_fio 
		ELSE '' 
	END,
	CASE 
		WHEN srvc_ptn.contract_id IS NOT NULL 
		THEN '№ '||coalesce(contract.contract_num,
		'')||' от '|| 
		CASE 
			WHEN contract.contract_date IS NULL 
			THEN '' 
			ELSE CHAR(contract.contract_date,LOCAL) 
		END 
		ELSE '' 
	END,
	patient.ptn_fio,
	cliniccase.clcase_num,
	dprt.dprt_name,
	prsn.prsn_fio,
	service.service_name,
	srvc_ptn.pay_count,
	srvc_ptn.EXEC_DATE,
	srvc_ptn.sum,
	klsCurrency.ELEMENT_KLS_NAME,
	srvc_ptn.sum*srvc_ptn.pay_count,
	pt.payment_sum,
	kiPaymentkind.ELEMENT_KLS_NAME AS paymentkind_name ,
	CASE 
		WHEN pt.payment_sum < 0.00 
		THEN 1 
		WHEN COALESCE(srvc_ptn.reject_sign, 0) = 1 
		THEN 103 
		ELSE 0 
	END 
FROM
	clinic.srvc_ptn srvc_ptn 
		LEFT OUTER JOIN clinic.contract contract 
		ON contract.contract_id = srvc_ptn.contract_id 
		LEFT OUTER JOIN clinic.contractor cntr 
		ON cntr.cntr_id = contract.cntr_id 
		LEFT OUTER JOIN clinic.ptn_main ptn_contract 
		ON ptn_contract.ptn_id = contract.ptn_id 
		LEFT OUTER JOIN clinic.ptn_main patient 
		ON patient.ptn_id = srvc_ptn.ptn_id 
		LEFT OUTER JOIN clinic.cliniccase cliniccase 
		ON cliniccase.clcase_id = srvc_ptn.clcase_id 
		LEFT OUTER JOIN clinic.department dprt 
		ON dprt.dprt_id = srvc_ptn.exec_dprt_id 
		LEFT OUTER JOIN clinic.person prsn 
		ON prsn.prsn_id = srvc_ptn.exec_prsn_id 
		LEFT OUTER JOIN clinic.service service 
		ON service.service_id = srvc_ptn.service_id 
		LEFT OUTER JOIN clsdata.KLS_ITEM klsCurrency 
		ON klsCurrency.ELEMENT_KLS_ID = srvc_ptn.currency_id 
		LEFT OUTER JOIN clsdata.paymentkind klsPaymentkind 
		ON klsPaymentkind.ELEMENT_KLS_ID = srvc_ptn.paymentkind 
		LEFT OUTER JOIN clsdata.KLS_ITEM kiPaymentkind 
		ON kiPaymentkind.ELEMENT_KLS_ID = srvc_ptn.paymentkind 
		LEFT OUTER JOIN Payments_Tmp pt 
		ON pt.srvc_ptn_id = srvc_ptn.srvc_ptn_id 
WHERE  0=1




0 запись(ей) выделено [Извлечь (fetch) MetaData: 1мс] [Извлечь данные: 1мс]

[Выполнено: 12.07.2013 14:02:18] [Выполнение: 479мс]
...
Рейтинг: 0 / 0
Пустое условие при выборке данных
    #38329380
Фотография Hunterik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А просто запрос из конструкции WITH сколько работает? =)
...
Рейтинг: 0 / 0
Пустое условие при выборке данных
    #38329381
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
knudsenDozent,

Гонять пустышкой ? это как?
а вот такая штука
SELECT * FROM SYSIBM.SYSDUMMY1 WHERE 0=1;
неужто полсекунды выполняется?

-->

SELECT * FROM SYSIBM.SYSDUMMY1 WHERE 0=1;
completed successfully.
No rows fetched


0 rows selected in 0.00 secs.


0 запись(ей) выделено [Извлечь (fetch) MetaData: 0мс] [Извлечь данные: 1мс]

[Выполнено: 12.07.2013 14:05:48] [Выполнение: 2мс]
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Пустое условие при выборке данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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