Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Beste Möglichkeit, Quartal und Jahr in SQL Server zu speichern?

Wenn Sie anstelle eines Datums separates Jahr und Quartal verwenden müssen (da Sie anscheinend bestimmte Berichtsanforderungen haben), würde ich mich für ein tinyint entscheiden für Viertel und smallint für das Jahr und speichern Sie sie in der PAYMENT Tabelle selbst.

Ich würde es nicht in einer anderen Tabelle speichern. Das ist schlecht, weil:

  • Sie müssen sicherstellen, dass Sie genügend Jahre/Quartale produziert haben
  • Sie müssen beitreten und einen Fremdschlüssel verwenden

Wenn Sie die Daten mit dem Datensatz speichern, wird die Leistung bei Lesevorgängen verbessert. Ihre Tabelle kann klein sein, aber es ist immer gut, die Leistung im Auge zu behalten.

WARUM

Stellen wir uns vor, Sie brauchen

In diesem Fall benötigen Sie einen deckenden Index auf alle Artikel und hilft immer noch nicht, da sich Ihre Abfrage auf ein bestimmtes Quartal und nicht auf ein Quartal bezieht. Die Daten auf dem Tisch zu haben, hilft jedoch bei einem leichteren Ausführungsplan.