【发布时间】:2014-06-21 17:56:08
【问题描述】:
我有一个奇怪的问题。
我正在运行一个查询:
SELECT IMIE, NAZWISKO, PESEL2, ADD_DATE, CONVERT(varchar, ADD_DATE, 121) AS XDATA, ID_ZLECENIA_XXX, * FROM XXX_KONWERSJE_HISTORIA AS EKH1
INNER JOIN XXX_DANE_PACJENTA EDP1 ON EKH1.ID_ZLECENIA_XXX=EDP1.ORDER_ID_XXX
WHERE EKH1.ID_KONWERSJE = (
SELECT MIN(ID_KONWERSJE)
FROM XXX_KONWERSJE_HISTORIA AS EKH2
WHERE EKH1.ID_ZLECENIA_XXX = EKH2.ID_ZLECENIA_XXX
)
AND EDP1.RECNO = (
SELECT MAX(RECNO)
FROM XXX_DANE_PACJENTA EDP2
WHERE EDP2.ORDER_ID_XXX = EDP1.ORDER_ID_XXX
)
AND EKH1.ID_ZLECENIA_XXX LIKE '%140000393%'
AND ADD_DATE>'20140419' AND ADD_DATE<='20140621 23:59:59.999'
ORDER BY EKH1.ID_KONWERSJE, EKH1.ID_ZLECENIA_XXX DESC
如果我使用大约 2 个月(63 天 - 它给我 1015 个结果)的日期限制,则查询可以正常工作。如果我延长日期限制查询将失败(查询失败 blabla)。
这发生在 windows 64 位 php (apache, Xamp) 下。
当我直接从 MS SQL SERWER Management Studio 运行此查询时,一切正常,无论我选择什么日期限制。
发生了什么事?在 apache/php 下是否有某种限制? (没有“查询超时”之类的信息,只有“查询失败”)
【问题讨论】:
-
添加 set_time_limit(0);在运行查询的 php 页面的开头
-
它没有帮助。我已经使用 ini_set('max_execution_time', 36000);但没有什么超过时间,只有“查询失败”
-
你试过 mssql_get_last_message()
-
Query failed blabla 中的 blabla 大部分时间都很重要。
-
@Bogdan Sahlea - 这是计划的屏幕strimatex.nazwa.pl/maxium/execute_plan.jpg,这是 xml strimatex.nazwa.pl/maxium/execute_plan.sqlplan
标签: php sql-server apache