Added dayOfWeek to date/datetime fields
This commit is contained in:
parent
ba25bcb8c2
commit
7ca5d62cc9
|
|
@ -287,6 +287,10 @@ QString SqliteGenerator::createConditionalPhrase(const PhraseData *d) const
|
|||
return QStringLiteral("CAST(strftime('%d', %1) AS INT)")
|
||||
.arg(createConditionalPhrase(d->left));
|
||||
|
||||
case PhraseData::DatePartDayOfWeek:
|
||||
return QStringLiteral("CAST(strftime('%w', %1) AS INT)")
|
||||
.arg(createConditionalPhrase(d->left));
|
||||
|
||||
case PhraseData::DatePartHour:
|
||||
return QStringLiteral("CAST(strftime('%H', %1) AS INT)")
|
||||
.arg(createConditionalPhrase(d->left));
|
||||
|
|
|
|||
|
|
@ -266,6 +266,9 @@ QString SqlServerGenerator::createConditionalPhrase(const PhraseData *d) const
|
|||
|
||||
if (d->type == PhraseData::WithoutOperand) {
|
||||
switch (op) {
|
||||
case PhraseData::DatePartDayOfWeek:
|
||||
return QStringLiteral("DATEPART(WEEKDAY, %1)")
|
||||
.arg(createConditionalPhrase(d->left));
|
||||
case PhraseData::DatePartYear:
|
||||
case PhraseData::DatePartMonth:
|
||||
case PhraseData::DatePartDay:
|
||||
|
|
|
|||
|
|
@ -52,6 +52,10 @@ ConditionalPhrase FieldPhrase<QDate>::day() {
|
|||
return ConditionalPhrase(this, PhraseData::DatePartDay);
|
||||
}
|
||||
|
||||
ConditionalPhrase FieldPhrase<QDate>::dayOfWeek() {
|
||||
return ConditionalPhrase(this, PhraseData::DatePartDayOfWeek);
|
||||
}
|
||||
|
||||
FieldPhrase<QTime>::FieldPhrase(const char *className, const char *s) :
|
||||
AbstractFieldPhrase(className, s)
|
||||
{}
|
||||
|
|
@ -125,6 +129,10 @@ ConditionalPhrase FieldPhrase<QDateTime>::day() {
|
|||
return ConditionalPhrase(this, PhraseData::DatePartDay);
|
||||
}
|
||||
|
||||
ConditionalPhrase FieldPhrase<QDateTime>::dayOfWeek() {
|
||||
return ConditionalPhrase(this, PhraseData::DatePartDayOfWeek);
|
||||
}
|
||||
|
||||
ConditionalPhrase FieldPhrase<QDateTime>::hour() {
|
||||
return ConditionalPhrase(this, PhraseData::DatePartHour);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,6 +75,8 @@ public:
|
|||
ConditionalPhrase year();
|
||||
ConditionalPhrase month();
|
||||
ConditionalPhrase day();
|
||||
|
||||
ConditionalPhrase dayOfWeek();
|
||||
};
|
||||
|
||||
template<>
|
||||
|
|
@ -115,6 +117,8 @@ public:
|
|||
ConditionalPhrase month();
|
||||
ConditionalPhrase day();
|
||||
|
||||
ConditionalPhrase dayOfWeek();
|
||||
|
||||
ConditionalPhrase hour();
|
||||
ConditionalPhrase minute();
|
||||
ConditionalPhrase second();
|
||||
|
|
|
|||
Loading…
Reference in New Issue