我有一個sql查詢,從x ++通過odbc針對非ax表(至少部分)執行。 的SQL查詢-執行計劃建議到索引添加到參照斧表,例如:將索引添加到axapta表
CREATE NONCLUSTERED INDEX [] ON [(FIELD1]) INCLUDE([幾個字段])
我記得通過ax-tables上的management-studio創建任何這些索引不是一個好主意,但是如何通過ax創建這樣的索引?應該將include塊中的字段簡單地添加到字段列表中?
另一個索引暗示是一個更簡單的一個:
CREATE NONCLUSTERED INDEX [] ON []([FIELD1],[FIELD2])
但即使創建該指數斧在關於表和指定的字段 - 查詢分析器仍建議創建此索引。
查看創建語句此指數在SQL managmement工作室,在dataAreaID列包括(自動)....
任何提示? 在此先感謝!
答案評論:
它是從X ++執行一個SQL查詢。所用的表格部分是ax表格,部分不是。 似乎缺少的唯一索引是ax-table上的索引。
我不想討論一般的索引優化,只是詢問是否有可能在ax中添加一個索引,代表第一個「create-index-query」的「include ...」部分!
我當然知道關於DAID列在ax以外的查詢的事實 - 我只是感到驚訝,管理工作室批評fieldA + fieldB缺少索引,實際上這個索引已經存在(關於DAID自動)。
謝謝4回覆!
這是什麼:對非斧表...轉診斧表執行的SQL查詢。你是否使用AX表? – 2010-07-08 11:39:48
dataAreaID-column包含(自動)。是的,這就是AX的運作方式。在AX的外部使用AX表時,應在您的where子句中顯式地使用DataAreaId ==「xxx」。 – 2010-07-08 11:42:02
你能告訴你查詢代碼嗎?在抽象計劃上很難討論索引優化。 – 2010-07-08 11:43:15