0
以下の基準は許容できないほど遅く実行されています。テーブルのプライマリキーまたはインデックスに詳細を入力しなくても、これをより高速に実行できるような特別なものはありますか?Grailsの基準が遅すぎる
def results = OpportunityApplication.createCriteria().list() {
isNull('dateDeleted')
or {
opportunityInst {
isNull('dateDeleted')
opportunity {
isNull('dateDeleted')
gt('advertisingEndDate', new Date())
eq('useOrgAsContact', false)
}
opportunityLocation {
isNull('dateDeleted')
eq("email", user.email)
}
}
if (isPartner)
{
opportunityInst {
isNull('dateDeleted')
opportunity {
isNull('dateDeleted')
gt('advertisingEndDate', new Date())
eq('useOrgAsContact', true)
organisation {
isNull('dateDeleted')
eq("email", user.email)
}
}
}
}
}
}
を次のように共有スニペットに繰り返さビットの周りを移動することでしたクエリの述語のうち –
@Donそれはほとんど建設的ではありませんが、私は彼がdbスキーマを投稿する必要があることに完全に同意します。 –
SQLロギングをオンにすると、生成されたクエリを取得し、その上で 'EXPLAIN'を実行できます。それはちょうど推測よりも良いでしょう。 –