sql >> Databáze >  >> RDS >> Oracle

Jak identifikovat pracovní dny v Oracle?

Vaše verze Oracle nerozpozná 'weekday', protože to není Funkce Oracle .

Můžete použít to_char() funkce získat číslo dne, ale to závisí na nastavení NLS, takže je bezpečnější na něj neodpovídat. Názvy dnů jsou také závislé na jazyce NLS, ale to lze alespoň přepsat jako součást volání funkce:

where to_char(OR_Log.Surgery_Date, 'Dy', 'NLS_DATE_LANGUAGE=ENGLISH') not in ('Sat', 'Sun')

'Dy' prvek formátu je popsána v dokumentaci , spolu se všemi ostatními. Všimněte si, že 'DY' vám poskytne zkratku dne velkými písmeny a 'Day' nebo 'DAY' uveďte název celého dne smíšeným/velkými písmeny; ale ty jsou ve výchozím nastavení doplněny mezerami (stejně jako zkratky v jiných jazycích...); ale můžete přidat modifikátor, pokud chcete názvy celých dnů pro čitelnost:

where to_char(OR_Log.Surgery_Date, 'FMDay', 'NLS_DATE_LANGUAGE=ENGLISH') not in ('Saturday', 'Sunday')



  1. VYBERTE více řádků, KDE odpovídají dvěma podmínkám

  2. Praktický výběr procesoru pro úlohy SQL Server 2014/2016 OLTP

  3. aktualizovat prohlášení oracle nefunguje

  4. Mechanismus vkládání databáze