問題タブ [sqlperformance]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
database - DB varchar 列を更新するときに物理テーブルのオーバーフローを回避する方法
DB 統計の実行 テーブルを更新するときに、多くの物理的なオーバーフローが見られます。
その理由は、null として開始され、後で 20 文字までの値に更新される varchar 列であると考えています。それが発生すると、レコードが物理ページからオーバーフローするため、新しいページが割り当てられ、テーブルを再編成するまでデータの局所性が低下します。
varchar 列を null から文字列に更新してもオーバーフローしないように、事前にレコードに十分なスペースを割り当てるように DB にヒントを与えるにはどうすればよいですか?
- 定義済みの最大長がないため、固定長の CHAR 列タイプに切り替えることができません。
- null の代わりに魔法の値 ("0000000000000000000" など) をプリアロケータとして使用することは避けます。
- 私の主な使用例は DB2 ですが、MSSQL と Oracle についても知りたいです。
sql - 0 行に影響する場合でも、SQL 削除要求は「インデックスの削除」にかなりの時間を費やします
私はMSSQL Server 2008を使用しており、テーブルから古いレコードを定期的に削除する単純な条件のSQLリクエストを持っています(テーブル内の〜3ミルのレコード)。
このリクエストは、0 行に影響する場合でもかなりの時間 (~ 10 秒) 実行されました。
このテーブルにはいくつかのインデックスがあり、実際の実行計画では、「インデックスの削除」操作がすべての実行時間を消費していることがわかります。
削除操作の影響を受ける行がない場合、SQL Server がインデックスに対して多くの作業を行うのはなぜですか?
アップデート:
リクエスト:
実際の実行計画 XML: pastebin.com/up2E3iP1
sql-server - TimeOut の期限が切れました: nHibernate の使用中に SQL 例外が発生しました
詳細を確認したところ、以下の調査結果を知りました。内部例外を取得できなかったので、フィドラーで実行して、そこから情報を取得できるかどうかを確認しました.フィドラーには以下の詳細がありました
[GenericADOException: クエリを実行できませんでした [ select this_.CompanyId as CompanyId0_30_, this_.HooversCompanyId as HooversC2_0_30_, this_.DUNS as DUNS0_30_, this_.CompanyName as CompanyN4_0_30_, this_.AddressLine1 as AddressL5_0_30_, this_.AddressLine2 as AddressL6_0_30_, this_.State as State0_30 、this_.City を City0_30_、this_.ZipCode を ZipCode0_30_、this_.CountryTelephoneAccessCode を Country10_0_30_、this_.TelephoneNumber を Telepho11_0_30_、this_.FaxNumber を FaxNumber0_30_、this_.Revenue を Revenue0_30_、this_.FinancialYearEndDate を Financi14_0_30_、this_Employee_3 .EmployeesHereTotal は Employee16_0_30_、this_.LegalStructure は LegalSt17_0_30_、this_.ProfitLoss は ProfitLoss0_30_、this_.NetWorth は NetWorth0_30_、this_.HasSubsidariesIndicator は HasSubs20_0_30_、this_.ITSpendingUpdateDate as ITSpend21_0_30_, this_.ITSpending as ITSpending0_30_, this_.ITSpendingNextYearPrediction as ITSpend23_0_30_, this_.ITSpendingGrowth as ITSpend24_0_30_, this_.AuditCreatedDate as AuditCr25_0_30_, this_.AuditModifiedDate as AuditMo26_0_30_, this_.Website as Website0_30_, this_.OwnershipTypeId as Ownersh28_0_30_, this_.CompanyStatusId as Company29_0_30_, this_.RecordTypeId as RecordT30_0_30_, this_.LocationTypeId as Locatio31_0_30_, this_.ZipCodeId as ZipCodeId0_30_, this_.PrimarySIC_Code as PrimarySIC33_0_30_, this_.StateId as StateId0_30_, this_.CountryId as CountryId0_30_, this_.SWOTAnalysisId as SWOTAna36_0_30_, primaryind2_.CompanyId as CompanyId32_, primaryind2_.CompanyIndustryId は CompanyI1_32_ として、primaryind2_.CompanyIndustryId は CompanyI1_8_0_ として、primaryind2_.IsPrimary は IsPrimary8_0_ として、primaryind2_.CompanyId は CompanyId8_0_、primaryind2_.HIC は HIC8_0_、industry3_.HIC は HIC6_1_、industry3_.Name は Name6_1_、industry3_.Level は Level6_1_、industry3_.ParentHIC は ParentHIC6_1_、itspending4_.CompanyId は CompanyId33_、itspending4_.ITSpendingId は ITSpendi1_43_、itspendingId は ITSpendi1_33_ です。 ITSpendingId as ITSpendi1_14_2_, itspending4_.Amount as Amount14_2_, itspending4_.CompanyId as CompanyId14_2_, itspending4_.ITSpendingTypeId as ITSpendi3_14_2_, itspending5_.ITSpendingTypeID as ITSpendi1_15_3_, itspending5_.Name as Name15_3_, itspending5_.ParentID as ParentID15_3_, hardware6_.CompanyId as CompanyId34_, hardware6_.ITSpendingId as ITSpendi1_34_、hardware6_.ITSpendingId は ITSpendi1_14_4_、hardware6_.Amount は Amount14_4_、hardware6_.CompanyId は CompanyId14_4_、hardware6_.ITSpendingTypeId は ITSpendi3_14_4_、computingp7_.CompanyId as CompanyId35_, computingp7_.ITSpendingId as ITSpendi1_35_, computingp7_.ITSpendingId as ITSpendi1_14_5_, computingp7_.Amount as Amount14_5_, computingp7_.CompanyId as CompanyId14_5_, computingp7_.ITSpendingTypeId as ITSpendi3_14_5_, networking8_.CompanyId as CompanyId36_, networking8_.ITSpendingId as ITSpendi1_36_, networking8_. ITSpendingId as ITSpendi1_14_6_, networking8_.Amount as Amount14_6_, networking8_.CompanyId as CompanyId14_6_, networking8_.ITSpendingTypeId as ITSpendi3_14_6_, serversand9_.CompanyId as CompanyId37_, serversand9_.ITSpendingId as ITSpendi1_37_, serversand9_.ITSpendingId as ITSpendi1_14_7_, serversand9_.Amount as Amount14_7_, serversand9_.CompanyId as CompanyId14_7_、serversand9_.ITSpendingTypeId は ITSpendi3_14_7_ として、software10_.CompanyId は CompanyId38_、software10_ として。ITSpendingId as ITSpendi1_38_, software10_.ITSpendingId as ITSpendi1_14_8_, software10_.Amount as Amount14_8_, software10_.CompanyId as CompanyId14_8_, software10_.ITSpendingTypeId as ITSpendi3_14_8_, softwareli11_.CompanyId as CompanyId39_, softwareli11_.ITSpendingId as ITSpendi1_39_, softwareli11_.ITSpendingId as ITSpendi1_14_9_, softwareli11_.Amount as Amount14_9_, softwareli11_.CompanyId as CompanyId14_9_, softwareli11_.ITSpendingTypeId as ITSpendi3_14_9_, supportand12_.CompanyId as CompanyId40_, supportand12_.ITSpendingId as ITSpendi1_40_, supportand12_.ITSpendingId as ITSpendi1_14_10_, supportand12_.Amount as Amount14_10_, supportand12_.CompanyId as CompanyId14_10_, supportand12_.ITSpendingTypeId as ITSpendi3_14_10_, services13_.CompanyId は CompanyId41_ として、services13_.ITSpendingId は ITSpendi1_41_ として、services13_ として。ITSpendingId as ITSpendi1_14_11_, services13_.Amount as Amount14_11_, services13_.CompanyId as CompanyId14_11_, services13_.ITSpendingTypeId as ITSpendi3_14_11_, applicatio14_.CompanyId as CompanyId42_, applicatio14_.ITSpendingId as ITSpendi1_42_, applicatio14_.ITSpendingId as ITSpendi1_14_12_, applicatio14_.Amount as Amount14_12_, applicatio14_.CompanyId as CompanyId14_12_, applicatio14_.ITSpendingTypeId as ITSpendi3_14_12_, infrastruc15_.CompanyId as CompanyId43_, infrastruc15_.ITSpendingId as ITSpendi1_43_, infrastruc15_.ITSpendingId as ITSpendi1_14_13_, infrastruc15_.Amount as Amount14_13_, infrastruc15_.CompanyId as CompanyId14_13_, infrastruc15_.ITSpendingTypeId as ITSpendi3_14_13_, helpdeskan16_.CompanyId as CompanyId44_, helpdeskan16_.ITSpendingId は ITSpendi1_44_ として、helpdeskan16_.ITSpendingId は ITSpendi1_14_14_ として、helpdeskan16_.Amount as Amount14_14_, helpdeskan16_.CompanyId as CompanyId14_14_, helpdeskan16_.ITSpendingTypeId as ITSpendi3_14_14_, communicat17_.CompanyId as CompanyId45_, communicat17_.ITSpendingId as ITSpendi1_45_, communicat17_.ITSpendingId as ITSpendi1_14_15_, communicat17_.Amount as Amount14_15_, communicat17_.CompanyId as CompanyId14_15_, communicat17_. ITSpendingTypeId as ITSpendi3_14_15_, voiceservi18_.CompanyId as CompanyId46_, voiceservi18_.ITSpendingId as ITSpendi1_46_, voiceservi18_.ITSpendingId as ITSpendi1_14_16_, voiceservi18_.Amount as Amount14_16_, voiceservi18_.CompanyId as CompanyId14_16_, voiceservi18_.ITSpendingTypeId as ITSpendi3_14_16_, dataservic19_.CompanyId as CompanyId47_, dataservic19_.ITSpendingId as ITSpendi1_47_、dataservic19_.ITSpendingId として ITSpendi1_14_17_、dataservic19_。Amount as Amount14_17_, dataservic19_.CompanyId as CompanyId14_17_, dataservic19_.ITSpendingTypeId as ITSpendi3_14_17_, convergeds20_.CompanyId as CompanyId48_, convergeds20_.ITSpendingId as ITSpendi1_48_, convergeds20_.ITSpendingId as ITSpendi1_14_18_, convergeds20_.Amount as Amount14_18_, convergeds20_.CompanyId as CompanyId14_18_, convergeds20_.ITSpendingTypeId as ITSpendi3_14_18_, consulting21_.CompanyId as CompanyId49_, consulting21_.ITSpendingId as ITSpendi1_49_, consulting21_.ITSpendingId as ITSpendi1_14_19_, consulting21_.Amount as Amount14_19_, consulting21_.CompanyId as CompanyId14_19_, consulting21_.ITSpendingTypeId as ITSpendi3_14_19_, systemspla22_.CompanyId as CompanyId50_, systemspla22_.ITSpendingId as ITSpendi1_50_, systemspla22_.ITSpendingId は ITSpendi1_14_20_ として、systemspla22_.Amount は Amount14_20_ として、systemspla22_.CompanyId as CompanyId14_20_, systemspla22_.ITSpendingTypeId as ITSpendi3_14_20_, disasterre23_.CompanyId as CompanyId51_, disasterre23_.ITSpendingId as ITSpendi1_51_, disasterre23_.ITSpendingId as ITSpendi1_14_21_, disasterre23_.Amount as Amount14_21_, disasterre23_.CompanyId as CompanyId14_21_, disasterre23_.ITSpendingTypeId as ITSpendi3_14_21_, traininged24_. CompanyId as CompanyId52_, traininged24_.ITSpendingId as ITSpendi1_52_, traininged24_.ITSpendingId as ITSpendi1_14_22_, traininged24_.Amount as Amount14_22_, traininged24_.CompanyId as CompanyId14_22_, traininged24_.ITSpendingTypeId as ITSpendi3_14_22_, internalit25_.CompanyId as CompanyId53_, internalit25_.ITSpendingId as ITSpendi1_53_, internalit25_.ITSpendingId as ITSpendi1_14_23_, internalit25_.Amount as Amount14_23_, internalit25_.CompanyId as CompanyId14_23_, internalit25_.ITSpendingTypeId as ITSpendi3_14_23_, telco26_.CompanyId as CompanyId54_, telco26_.ITSpendingId as ITSpendi1_54_, telco26_.ITSpendingId as ITSpendi1_14_24_, telco26_.Amount as Amount14_24_, telco26_.CompanyId as CompanyId14_24_, telco26_.ITSpendingTypeId as ITSpendi3_14_24_, systemsint27_.CompanyId as CompanyId55_, systemsint27_.ITSpendingId as ITSpendi1_55_, systemsint27_.ITSpendingId as ITSpendi1_14_25_, systemsint27_.Amount as Amount14_25_, systemsint27_.CompanyId as CompanyId14_25_, systemsint27_.ITSpendingTypeId as ITSpendi3_14_25_, zipcode28_.ZipCodeId as ZipCodeId27_26_, zipcode28_.ZipCode as ZipCode27_26_, siccode29_.Code as Code20_27_, siccode29_.Name は Name20_27_、country30_.CountryId は CountryId4_28_、country30_.Name は Name4_28_、country30_ です。GeographyId as Geograph3_4_28_, contractsa31_.CompanyId as CompanyId3_29_, contractsa31_.ActiveContractValue as ActiveCo2_3_29_, contractsa31_.ActiveContractVolume as ActiveCo3_3_29_, contractsa31_.TotalContractValue as TotalCon4_3_29_, contractsa31_.TotalContractVolume as TotalCon5_3_29_, contractsa31_.RelationshipVendor as Relation6_3_29_ FROM Company this_ left outer join CompanyIndustry primaryind2_ on this_. CompanyId=primaryind2_.CompanyId および (primaryind2_.IsPrimary = 1) 左外部結合 HooversIndustry industry3_ on primaryind2_.HIC=industry3_.HIC 左外部結合 ITSpending itspending4_ on this_.CompanyId=itspending4_.CompanyId 左外部結合 ITSpendingType itspending5_ on itspending4_.ITSpendingTypeId=itspending5_ .ITSpendingTypeID は、this_.CompanyId=hardware6_ の ITSpending hardware6_ の外部結合を残しました。CompanyId および (hardware6_.ITSpendingTypeId = 2) は this_.CompanyId=computingp7_.CompanyId で ITSpending computep7_ を左外部結合し、(computingp7_.ITSpendingTypeId = 12) this_.CompanyId=networking8_.CompanyId で左外部結合 ITSpendingnetworking8_ および (networking8_.ITSpendingTypeId = 11 ) 左外部結合 ITSpending serverand9_ on this_.CompanyId=serversand9_.CompanyId および (serversand9_.ITSpendingTypeId = 10) 左外部結合 ITSpending software10_ on this_.CompanyId=software10_.CompanyId および (software10_.ITSpendingTypeId = 3) 左外部結合 ITSpending softwareli11_ on this_ .CompanyId=softwareli11_.CompanyId および (softwareli11_.ITSpendingTypeId = 15) 左外部結合 ITSpending supportand12_ on this_.CompanyId=supportand12_.CompanyId および (supportand12_.ITSpendingTypeId = 16) this_.CompanyId=services13_.CompanyId の左外部結合 ITSpending services13_ および (services13_.ITSpendingTypeId = 4) this_.CompanyId=applicatio14_.CompanyId の左外部結合 ITSpending applicatio14_ および (applicatio14_.ITSpendingTypeId = 19) 左外部結合 ITSpending infrastruc15_ on this_.CompanyId=infrastruc15_.CompanyId および (infrastruc15_.ITSpendingTypeId = 20) 左外部結合 ITSpending helpdeskan16_ on this_.CompanyId=helpdeskan16_.CompanyId および (helpdeskan16_.ITSpendingTypeId = 21) 左外部結合 ITSpending communicat17_ on this_.CompanyId=communicat17_. CompanyId および (communicat17_.ITSpendingTypeId = 5) は、this_.CompanyId=voiceservi18_.CompanyId で ITSpending voiceservi18_ を左外部結合し、(voiceservi18_.ITSpendingTypeId = 24) this_ で ITSpending dataservic19_ を左外部結合します。CompanyId=dataservic19_.CompanyId および (dataservic19_.ITSpendingTypeId = 25) 左外部結合 ITSpending convergeds20_ on this_.CompanyId=convergeds20_.CompanyId および (convergeds20_.ITSpendingTypeId = 26) 左外部結合 ITSpending Consulting21_ on this_.CompanyId=consulting21_.CompanyId および (consulting21_ .ITSpendingTypeId = 6) this_.CompanyId=systemspla22_.CompanyId 上の左外部結合 ITSpending systemspla22_ および (systemspla22_.ITSpendingTypeId = 29) this_.CompanyId=disasterre23_.CompanyId 上の左外部結合 ITSpending Disasterre23_ および (disasterre23_.ITSpendingTypeId = 30) 左外部結合ITSpending traininged24_ on this_.CompanyId=traininged24_.CompanyId および (traininged24_.ITSpendingTypeId = 31) 左外部結合 ITSpending internalit25_ on this_.CompanyId=internalit25_.CompanyId および (internalit25_.ITSpendingTypeId = 38) this_.CompanyId=telco26_.CompanyId の左外部結合 ITSpending telco26_ および (telco26_.ITSpendingTypeId = 35) this_.CompanyId=systemsint27_.CompanyId の左外部結合 ITSpending systemsint27_ および (systemsint27_.ITSpendingTypeId = 36) 左外部結合 ZipCode zipcode28_ on this_.ZipCodeId=zipcode28_.ZipCodeId 左外部結合 SICCode siccode29_ on this_.PrimarySIC_Code=siccode29_.Code 左外部結合 国 country30_ on this_.CountryId=country30_.CountryId 左外部結合.CompanyId in (@p0) ] 名前:cp0 - 値:3506 [SQL: this_.CompanyId を CompanyId0_30_ として、this_.HooversCompanyId を HooversC2_0_30_ として、this_.DUNS を DUNS0_30_ として、this_.CompanyName を CompanyN4_0_30_ として、this_.AddressLine1 を AddressL5_0_30_ として、this_.AddressLine2 を AddressL6_0_30_ として、this_.State を State0_30_ として、this_.City を City0_30_ として、this_.ZipCode を ZipCode0_30_ として、this_.CountryTelephoneAccessCode を Country10_0_30_ として、this_.TelephoneNumber を Telepho11_0_30_ として、this_.thisFaxNumber を FaxNumber0_30_ として、 Revenue0_30_, this_.FinancialYearEndDate as Financi14_0_30_, this_.EmployeesTotal as Employe15_0_30_, this_.EmployeesHereTotal as Employe16_0_30_, this_.LegalStructure as LegalSt17_0_30_, this_.ProfitLoss as ProfitLoss0_30_, this_.NetWorth as NetWorth0_30_, this_.HasSubsidariesIndicator as HasSubs20_0_30_, this_.ITSpendingUpdateDate as ITSpend21_0_30_, this_.ITSpending は ITSpending0_30_、this_.ITSpendingNextYearPrediction は ITSpend23_0_30_、this_.ITSpendingGrowth は ITSpend24_0_30_、this_.AuditCreatedDate as AuditCr25_0_30_, this_.AuditModifiedDate as AuditMo26_0_30_, this_.Website as Website0_30_, this_.OwnershipTypeId as Ownersh28_0_30_, this_.CompanyStatusId as Company29_0_30_, this_.RecordTypeId as RecordT30_0_30_, this_.LocationTypeId as Locatio31_0_30_, this_.ZipCodeId as ZipCodeId0_30_, this_.PrimarySIC_Code as PrimarySIC33_0_30_, this_.StateId as StateId0_30_, this_.CountryId as CountryId0_30_, this_.SWOTAnalysisId as SWOTAna36_0_30_, primaryind2_.CompanyId as CompanyId32_, primaryind2_.CompanyIndustryId as CompanyI1_32_, primaryind2_.CompanyIndustryId as CompanyI1_8_0_, primaryind2_.IsPrimary as IsPrimary8_0_, primaryind2_.CompanyId as CompanyId8_0_, primaryind2_.HIC は HIC8_0_、industry3_.HIC は HIC6_1_、industry3_.Name は Name6_1_、industry3_.Level は Level6_1_、industry3_ です。ParentHIC as ParentHIC6_1_, itspending4_.CompanyId as CompanyId33_, itspending4_.ITSpendingId as ITSpendi1_33_, itspending4_.ITSpendingId as ITSpendi1_14_2_, itspending4_.Amount as Amount14_2_, itspending4_.CompanyId as CompanyId14_2_, itspending4_.ITSpendingTypeId as ITSpendi3_14_2_, itspending5_.ITSpendingTypeID as ITSpendi1_15_3_, itspending5_.Name as Name15_3_、itspending5_.ParentID は ParentID15_3_、hardware6_.CompanyId は CompanyId34_、hardware6_.ITSpendingId は ITSpendi1_34_、hardware6_.ITSpendingId は ITSpendi1_14_4_、hardware6_.Amount は Amount14_4_、hardware6_.CompanyId は CompanyId14_4_、hardware6_.ITSpendingTypeId は CompanyId14_4_Company、 ITSpendi1_35_ として p7_.ITSpendingId を計算し、ITSpendi1_14_5_ として p7_.ITSpendingId を計算し、Amount14_5_ として p7_.Amount を計算し、p7_ を計算します。CompanyId as CompanyId14_5_, computingp7_.ITSpendingTypeId as ITSpendi3_14_5_, networking8_.CompanyId as CompanyId36_, networking8_.ITSpendingId as ITSpendi1_36_, networking8_.ITSpendingId as ITSpendi1_14_6_, networking8_.Amount as Amount14_6_, networking8_.CompanyId as CompanyId14_6_, networking8_.ITSpendingTypeId as ITSpendi3_14_6_, serversand9_.CompanyId as CompanyId37_, serversand9_.ITSpendingId as ITSpendi1_37_, serversand9_.ITSpendingId as ITSpendi1_14_7_, serversand9_.Amount as Amount14_7_, serversand9_.CompanyId as CompanyId14_7_, serversand9_.ITSpendingTypeId as ITSpendi3_14_7_, software10_.CompanyId as CompanyId38_, software10_.ITSpendingId as ITSpendi1_38_, software10_.ITSpendingId as ITSpendi1_14_8_, software10_.Amount は Amount14_8_ として、software10_.CompanyId は CompanyId14_8_ として、software10_.ITSpendingTypeId as ITSpendi3_14_8_, softwareli11_.CompanyId as CompanyId39_, softwareli11_.ITSpendingId as ITSpendi1_39_, softwareli11_.ITSpendingId as ITSpendi1_14_9_, softwareli11_.Amount as Amount14_9_, softwareli11_.CompanyId as CompanyId14_9_, softwareli11_.ITSpendingTypeId as ITSpendi3_14_9_, supportand12_.CompanyId as CompanyId40_, supportand12_.ITSpendingId as ITSpendi1_40_, supportand12_.ITSpendingId as ITSpendi1_14_10_, supportand12_.Amount as Amount14_10_, supportand12_.CompanyId as CompanyId14_10_, supportand12_.ITSpendingTypeId as ITSpendi3_14_10_, services13_.CompanyId as CompanyId41_, services13_.ITSpendingId as ITSpendi1_41_, services13_.ITSpendingId as ITSpendi1_14_11_, services13_.Amount as Amount14_11_, services13_.CompanyId は CompanyId14_11_ として、services13_.ITSpendingTypeId は ITSpendi3_14_11_ として、applicatio14_.CompanyId as CompanyId42_, applicatio14_.ITSpendingId as ITSpendi1_42_, applicatio14_.ITSpendingId as ITSpendi1_14_12_, applicatio14_.Amount as Amount14_12_, applicatio14_.CompanyId as CompanyId14_12_, applicatio14_.ITSpendingTypeId as ITSpendi3_14_12_, infrastruc15_.CompanyId as CompanyId43_, infrastruc15_.ITSpendingId as ITSpendi1_43_, infrastruc15_. ITSpendingId as ITSpendi1_14_13_, infrastruc15_.Amount as Amount14_13_, infrastruc15_.CompanyId as CompanyId14_13_, infrastruc15_.ITSpendingTypeId as ITSpendi3_14_13_, helpdeskan16_.CompanyId as CompanyId44_, helpdeskan16_.ITSpendingId as ITSpendi1_44_, helpdeskan16_.ITSpendingId as ITSpendi1_14_14_, helpdeskan16_.Amount as Amount14_14_, helpdeskan16_.CompanyId as CompanyId14_14_、helpdeskan16_.ITSpendi3_14_14_、communicat17_ としての ITSpendingTypeId。CompanyId as CompanyId45_, communicat17_.ITSpendingId as ITSpendi1_45_, communicat17_.ITSpendingId as ITSpendi1_14_15_, communicat17_.Amount as Amount14_15_, communicat17_.CompanyId as CompanyId14_15_, communicat17_.ITSpendingTypeId as ITSpendi3_14_15_, voiceservi18_.CompanyId as CompanyId46_, voiceservi18_.ITSpendingId as ITSpendi1_46_, voiceservi18_.ITSpendingId as ITSpendi1_14_16_, voiceservi18_.Amount as Amount14_16_, voiceservi18_.CompanyId as CompanyId14_16_, voiceservi18_.ITSpendingTypeId as ITSpendi3_14_16_, dataservic19_.CompanyId as CompanyId47_, dataservic19_.ITSpendingId as ITSpendi1_47_, dataservic19_.ITSpendingId as ITSpendi1_14_17_, dataservic19_.Amount as Amount14_17_, dataservic19_.CompanyId as CompanyId14_17_, dataservic19_.ITSpendingTypeId は ITSpendi3_14_17_ として、convergeds20_.CompanyId は CompanyId48_ として、convergeds20_.ITSpendingId as ITSpendi1_48_, convergeds20_.ITSpendingId as ITSpendi1_14_18_, convergeds20_.Amount as Amount14_18_, convergeds20_.CompanyId as CompanyId14_18_, convergeds20_.ITSpendingTypeId as ITSpendi3_14_18_, consulting21_.CompanyId as CompanyId49_, consulting21_.ITSpendingId as ITSpendi1_49_, consulting21_.ITSpendingId as ITSpendi1_14_19_, consulting21_. Amount as Amount14_19_, consulting21_.CompanyId as CompanyId14_19_, consulting21_.ITSpendingTypeId as ITSpendi3_14_19_, systemspla22_.CompanyId as CompanyId50_, systemspla22_.ITSpendingId as ITSpendi1_50_, systemspla22_.ITSpendingId as ITSpendi1_14_20_, systemspla22_.Amount as Amount14_20_, systemspla22_.CompanyId as CompanyId14_20_, systemspla22_.ITSpendingTypeId as ITSpendi3_14_20_、disasterre23_.CompanyId は CompanyId51_、disasterre23_ として。ITSpendingId as ITSpendi1_51_, disasterre23_.ITSpendingId as ITSpendi1_14_21_, disasterre23_.Amount as Amount14_21_, disasterre23_.CompanyId as CompanyId14_21_, disasterre23_.ITSpendingTypeId as ITSpendi3_14_21_, traininged24_.CompanyId as CompanyId52_, traininged24_.ITSpendingId as ITSpendi1_52_, traininged24_.ITSpendingId as ITSpendi1_14_22_, traininged24_.Amount as Amount14_22_, traininged24_.CompanyId as CompanyId14_22_, traininged24_.ITSpendingTypeId as ITSpendi3_14_22_, internalit25_.CompanyId as CompanyId53_, internalit25_.ITSpendingId as ITSpendi1_53_, internalit25_.ITSpendingId as ITSpendi1_14_23_, internalit25_.Amount as Amount14_23_, internalit25_.CompanyId as CompanyId14_23_, internalit25_.ITSpendingTypeId as ITSpendi3_14_23_, telco26_.CompanyId は CompanyId54_ として、telco26_.ITSpendingId は ITSpendi1_54_ として、telco26_ として。ITSpendingId as ITSpendi1_14_24_, telco26_.Amount as Amount14_24_, telco26_.CompanyId as CompanyId14_24_, telco26_.ITSpendingTypeId as ITSpendi3_14_24_, systemsint27_.CompanyId as CompanyId55_, systemsint27_.ITSpendingId as ITSpendi1_55_, systemsint27_.ITSpendingId as ITSpendi1_14_25_, systemsint27_.Amount as Amount14_25_, systemsint27_.CompanyId as CompanyId14_25_, systemsint27_.ITSpendingTypeId as ITSpendi3_14_25_, zipcode28_.ZipCodeId as ZipCodeId27_26_, zipcode28_.ZipCode as ZipCode27_26_, siccode29_.Code as Code20_27_, siccode29_.Name as Name20_27_, country30_.CountryId as CountryId4_28_, country30_.Name as Name4_28_, country30_.GeographyId as Geograph3_4_28_, contracta31_.CompanyId は CompanyId3_29_ として、contracta31_.ActiveContractValue は ActiveCo2_3_29_ として、contracta31_.ActiveContractVolume は ActiveCo3_3_29_ として、Contracta31_.TotalContractValue を TotalCon4_3_29_ として、contracta31_.TotalContractVolume を TotalCon5_3_29_ として、contracta31_.RelationshipVendor を Relation6_3_29_ として FROM Company this_ left outside Join CompanyIndustry primaryind2_ on this_.CompanyId=primaryind2_.CompanyId および (primaryind2_.IsPrimary = 1) left outers join primaryindutry onIC Hoovers3_Indutry. =industry3_.HIC 左外部結合 ITSpending itspending4_ on this_.CompanyId=itspending4_.CompanyId 左外部結合 ITSpendingType itspending5_ on itspending4_.ITSpendingTypeId=itspending5_.ITSpendingTypeID 左外部結合 ITSpending hardware6_ on this_.CompanyId=hardware6_.CompanyId および (hardware6_.ITSpendingTypeId = 2 ) this_.CompanyId=computingp7_.CompanyId および (computingp7_.ITSpendingTypeId = 12) 左外部結合 ITSpending network8_ on this_.CompanyId=networking8_.CompanyId および (networking8_.ITSpendingTypeId = 11) 左外部結合 ITSpending serversand9_ on this_.CompanyId=serversand9_.CompanyId および (serversand9_.ITSpendingTypeId = 10) 左外部結合 ITSpending software10_ on this_.CompanyId=software10_.CompanyId および (software10_.ITSpendingTypeId = 3) 左外部結合 ITSpending softwareli11_ on this_.CompanyId=softwareli11_.CompanyId および (softwareli11_.ITSpendingTypeId = 15) 左外部結合 ITSpending supportand12_ on this_.CompanyId=supportand12_. CompanyId および (supportand12_.ITSpendingTypeId = 16) は、this_.CompanyId=services13_.CompanyId の ITSpending services13_ を左外部結合し、(services13_.ITSpendingTypeId = 4) this_.CompanyId=applicatio14_ の ITSpending applicatio14_ を左外部結合します。CompanyId および (applicatio14_.ITSpendingTypeId = 19) this_.CompanyId=infrastruc15_.CompanyId の左外部結合 ITSpending infrastruc15_ および (infrastruc15_.ITSpendingTypeId = 20) this_.CompanyId=helpdeskan16_.CompanyId の左外部結合 ITSpending helpdeskan16_ および (helpdeskan16_.ITSpendingTypeId = 21 ) this_.CompanyId=communicat17_.CompanyId の左外部結合 ITSpending communicat17_ および (communicat17_.ITSpendingTypeId = 5) this_.CompanyId=voiceservi18_.CompanyId の左外部結合 ITSpending voiceservi18_ および (voiceservi18_.ITSpendingTypeId = 24) this_ の左外部結合 ITSpending dataservic19_ .CompanyId=dataservic19_.CompanyId および (dataservic19_.ITSpendingTypeId = 25) 左外部結合 ITSpending convergeds20_ on this_.CompanyId=convergeds20_.CompanyId および (convergeds20_.ITSpendingTypeId = 26) this_.CompanyId=consulting21_.CompanyId の左外部結合 ITSpending Consulting21_ および (consulting21_.ITSpendingTypeId = 6) this_.CompanyId=systemspla22_.CompanyId の左外部結合 ITSpending systemspla22_ および (systemspla22_.ITSpendingTypeId = 29) 左外部結合 ITSpending Disasterre23_ on this_.CompanyId=disasterre23_.CompanyId および (disasterre23_.ITSpendingTypeId = 30) 左外部結合 ITSpending traininged24_ on this_.CompanyId=traininged24_.CompanyId および (traininged24_.ITSpendingTypeId = 31) 左外部結合 ITSpending internalit25_ on this_.CompanyId=internalit25_. CompanyId および (internalit25_.ITSpendingTypeId = 38) は、this_.CompanyId=telco26_.CompanyId で ITSpending telco26_ を左外部結合し、(telco26_.ITSpendingTypeId = 35) は、this_ で ITSpending systemsint27_ を外部結合します。CompanyId=systemsint27_.CompanyId および (systemsint27_.ITSpendingTypeId = 36) 左外部結合 ZipCode zipcode28_ on this_.ZipCodeId=zipcode28_.ZipCodeId 左外部結合 SICCode siccode29_ on this_.PrimarySIC_Code=siccode29_.Code 左外部結合 国 country30_ on this_.CountryId=country30_ .CountryId 左外部結合 CompanyContractAggregation contracta31_ on this_.CompanyId=contractsa31_.CompanyId WHERE this_.CompanyId in (@p0)]] NHibernate.Loader.Loader.DoList(ISessionImplementor セッション, QueryParameters queryParameters) +637CountryId 左外部結合 CompanyContractAggregation contracta31_ on this_.CompanyId=contractsa31_.CompanyId WHERE this_.CompanyId in (@p0)]] NHibernate.Loader.Loader.DoList(ISessionImplementor セッション, QueryParameters queryParameters) +637CountryId 左外部結合 CompanyContractAggregation contracta31_ on this_.CompanyId=contractsa31_.CompanyId WHERE this_.CompanyId in (@p0)]] NHibernate.Loader.Loader.DoList(ISessionImplementor セッション, QueryParameters queryParameters) +637
NHibernate.Loader.Loader.ListIgnoreQueryCache(ISessionImplementor セッション、QueryParameters queryParameters) +23
NHibernate.Loader.Criteria.CriteriaLoader.List(ISessionImplementor セッション) +60 NHibernate.Impl.SessionImpl.List(CriteriaImpl 基準、IList 結果) +1025
NHibernate.Impl .CriteriaImpl.List(IList 結果) +63
NHibernate.Impl.CriteriaImpl.List() +79
Ovum.Ictop.Dal.CustomRepositories.CompanyRepository.Criteria(CriteriaInstance 基準、Nullable1 pageIndex, Nullable
1 pageSize、Nullable1 maxCount) in c:\GIT-ICTOP\Ovum_Ictop\Ovum.Ictop.Admin.Dal\CustomRepositories\CompanyRepository.cs:69 Ovum.Ictop.Bl.ServiceWrappers.CompanyService.GetCompanyByCriteria(CriteriaInstance criteria, Nullable
1 pageIndex、Nullable1 pageSize, Nullable
1 maxCount) in c:\GIT-ICTOP\Ovum_Ictop\Ovum.Ictop.Bl\ServiceWrappers\CompanyService.cs:289 Ovum.Ictop.Web.Areas.CA.Controllers.SearchController.GetCompanyByLikeName(String name, Int32 numberPage) in c :\GIT-ICTOP\Ovum_Ictop\Ovum.Ictop.Web\Areas\CA\Controllers\SearchController.cs:45 Ovum.Ictop.Web.Areas.CA.Controllers.SearchController.Search(文字列 companyName) in c:\GIT- ICTOP\Ovum_Ictop\Ovum.Ictop.Web\Areas\CA\Controllers\SearchController.cs:29 lambda_method(Closure , ControllerBase , Object[] ) +127
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary 2 parameters) +39 System.Web.Mvc.<> c_DisplayClass15.<InvokeActionMethodWithFilters>b2 parameters) +264
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary
_12() +129 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter フィルター、ActionExecutingContext preContext、Func1 continuation) +826106 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList
1 フィルター、ActionDescriptor actionDescriptor、IDictionary`2 パラメーター) +314
System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext、文字列 actionName ) +825328
System.Web.Mvc.Controller.ExecuteCore() +159
System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) +335 System.Web.Mvc.<>c_ DisplayClassb.<BeginProcessRequest>b _5() + 62 System.Web.Mvc.Async.<>c_ DisplayClass1.<MakeVoidDelegate>b _0() +20 System.Web.Mvc.<> c_DisplayClasse.<EndProcessRequest>b_d() +54 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +469 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +375
sql - DB2 統計ビューはカーディナリティの見積もりに影響を与えません
ACTIONS
約 1,100 万行のテーブルがあります。列の 1 つは、ACTION_DATE
このことがいつ発生したかを示しています。昨日の行動を日報化したいけど、たまには昔のレポートも出したい。この表には、約 3 年前のデータが含まれています。
列の分布ACTION_DATE
は非常に偏っています。1 日に 50,000 件を超えるアクションが発生する場合もあれば、数百件に過ぎない場合もあります。RUNSTATS
このテーブルで を行ったところ、頻度リストが過去数年のエントリですぐにいっぱいになり、db2 がそのテーブルにアクセスするコストを誤って計算し、不適切な実行計画につながります。
Statistical Views について読んだことがありますが、これが問題の解決に役立つかもしれないと考えました。だから私はこのようなものを作りました:
しかし、コスト見積もりやクエリ プランには影響がないようです。
一方、特定の日のカーディナリティをSYSSTAT
テーブルに手動で挿入すると、次のようになります。
その日のクエリのアクセス プランを説明すると、情報が取得され、それに応じてコストが調整されることがわかります。
統計ビューの何が問題になっていますか?
c# - テーブルから6000万レコードのうち1300万レコードを返すSqlServerの遅い選択クエリ
結合インデックスを作成した 1 つの TXT_SUBSCRIBER_CELL_ID と LNGCASE_ID を含む約 25 列のテーブルがあります。
クエリを実行すると
実行が完了するまでに約 50 ~ 55 秒かかりますが、これはかなり遅いです。
どうすれば高速に実行できますか。
php - 複数の結合でクエリを作成する
私は現在phpとcodeigniterを学んでおり、クエリを組み合わせて高速かつ効果的にしたいと考えています。全部作ったけど、最後のテーブルにまだ入ってない…
投稿、ユーザー、post_categories、カテゴリの 4 つのテーブルがあります。
そして、私が取得したいもの:
- すべての投稿
- usr_id を使用したユーザー情報
- cat_ids を使用して post_categories からすべてのカテゴリ ID を取得する
- id_* を使用して各カテゴリの名前を取得します
これが最終的な結果です...各id_*のカテゴリ名を取得するのに苦労しているため、完全ではありません
このクエリを codeigniter で終了するのを手伝ってくれる人はいますか?
編集: post_categories で: id_1 は常に ... になりますが、id_2 と id_3 は NULL (デフォルト値) のままになる可能性があります
sql - SQL Server ページネーション クエリ - パフォーマンスに関する考慮事項
SQL に取り組んでおり、パフォーマンスの面ではそれほど技術的ではありません。C#を使用して動的にクエリを形成し、ページネーションの目的を念頭に置いています
ページネーションをクリックするたびに、10個のレコードと以下のようなサンプルクエリを取得します
ここで、testId は主キーです。
これは完璧に機能します。機密データであるため、構文を投稿しました。たとえば6秒で実行されます
ユーザーが最後のページをクリックすると、以下のクエリが形成されます
上記のクエリには 40 秒かかります。
私が欠けているコアのものは何ですか
毎回10件のレコードを取得しますが、時間に大きな違いがあります
ありがとう
sql - 等しくないパフォーマンス
と の間にパフォーマンスの違いは!=
あり<>
ますか?
おまけ:!=
の代わりにを使用すると、人々が動揺するのはなぜ<>
ですか? もちろん、私はすべてのプログラマーがこれに腹を立てていると推測していますが、現在、私は 2 つの会社で働いており、その会社は<>
c# - パラメーター化された Linq to SQL クエリがパフォーマンスの問題を引き起こす
MSSQL サーバー 2008 に対して実行に 11 分かかる linq クエリがあります。MSSQL プロファイラーを使用して、実行に時間がかかるクエリを見つけ、データベースに対して単独で実行しました。
また、すべてのパラメーターを削除し、値を直接追加して、クエリを実行しました。実行にかかった時間は 1 秒未満でした。
グーグルで検索したところ、where句の値が判明する前にプランがコンパイルされるため、パラメーターを使用するとパフォーマンスに実際に影響を与える可能性があることがわかりました。
Linq to SQL は常にパラメーター化された SQL を実行するため、この場合のパフォーマンスを向上させるにはどうすればよいでしょうか?
インデックスに関する列を改善できるものは見つかりませんでした。Inner Join ステートメントの最初のテーブルには 192,014 行があり、パラメーターのない SQL の実行には 1 秒もかかりません。実行計画のスクリーンショットが添付されています。
編集はスクリーンショットの下にあります。
これは Linq クエリです。
編集:スクリーンショットはここでは少し小さくなりました. パラメータ化された SQL には 5 つのパラメータしかありません。
編集 2:実行計画を変更するのは、パラメーター @p0 を持つ Inner Join ステートメントです。値自体を含む @p0 変数のみを削除すると、1 秒以内に実行されます。この値がすべての場合で一定である場合 (調査する必要があります)、この値がパラメーターのように使用されないようにすることはできますか?