Jeg ved, at det ikke var dét, du ønskede, men jeg ville nok spørge på Year og Month, hvis dit query gælder det. Alternativt kan du måske formattere datoen først?
Jeg går ud fra feltet er et DateTime felt, eftersom det har et "dt" prefix. Jeg bruger sjældent SQL Server direkte, så er faktisk ikke helt klar over hvordan det gemmer det - men du kan ikke regne med at det ligger som en streng du kan søge i sådan.
Hvis hastighed ikke betyder så meget, burde du kunne sige f.eks. where year(dtLastModif) = 2019 and month(dtLastModif) = 6 Men når man bruger funktioner i en where-clause kan databasen ikke udnytte indexes. Det er dog det samme når du bruger en string search, som du forsøger, hvilket er endnu langsommere.
Hvis du vil optimere hastigheden også, er det faktisk bedre at bruge noget i stil med where dtLastModif >= '2019-06-01' and dtLastModif <= '2019-06-30'
Ja det giver noget bedre mening når man søger i datetime at man bare bruger >= og <= end hvis man laver alle de like og checks, gav også noget hurtigere søgning kunne jeg godt mærke..
Det ville nok give mest mening at oprette et nyt spørgsmål om det, i stedet for at kommentere på et der er et halvt år gammelt. Men det kommer an på så meget. For det første er der utallige dialekter af SQL - for det andet, selvom du teknisk set kan programmere i SQL, står det sjældent alene. Som regel er det bare databasedriveren til et programmeringssprog udenom. Har du valgt et der?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.