sql >> Databasteknik >  >> RDS >> Sqlserver

Bästa sättet att lagra kvartal och år i SQL Server?

Om du måste använda separat år och kvartal istället för ett datum (eftersom du verkar ha specifika rapporteringskrav), skulle jag välja en tinyint för quarter och smallint för år och lagra dem i PAYMENT själva bordet.

Jag skulle inte förvara den i ett annat bord. Detta är dåligt eftersom:

  • Du måste se till att du har producerat tillräckligt många år/kvartal
  • Du måste gå med och använda en främmande nyckel

Om du lagrar data med posten hjälper det prestanda vid läsningar. Ditt bord kan vara litet men det är alltid bra att tänka på prestanda.

VARFÖR

Låt oss föreställa oss att du behöver få

I det här fallet skulle du behöva ett täckande index på alla artiklar och fortfarande inte hjälper eftersom din fråga gäller specifikt kvartal och inte kvartalsår. Att ha data på bordet kommer dock att hjälpa till med en lättare genomförandeplan.



  1. Hur man stänger en markör ordentligt i Android

  2. Optimera MySQL-frågor med tunga kopplingar

  3. Hur får man tid för att skapa databas i PostgreSQL 9.0?

  4. Ytterligare en anledning att undvika sp_updatestats