|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Вот моя проблема Есть таблица в MS SQL, название - BirthDay (данные записаны как 01.01.2001) год берется просто так, потому что мне год рождения сотрудников не говорят а только день и месяц. Так вот возникла проблемка (может быть и простая) но я что то не могу решить - Как составить запрос (выборку дат 01.01 не учитывая года) от текущей даты + 7 дней например сегодня 11.05 и результат запроса должен дать выборку с 11.05 по 18.05 (+ 7 дней) Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
11.05.2012, 20:25 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Код: c# 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2012, 10:03 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
МСУ Код: c# 1.
Нет! VIT2708Есть таблица в MS SQL, название - BirthDay (данные записаны как 01.01.2001) год берется просто так, потому что мне год рождения сотрудников не говорят а только день и месяц.Ну и исходите из того, что в БД хранится фиктивный 2001-й год. Заменяйте текущий год 2001-м и обычным способом расчитывайте границы интервала. Чтобы потом сделать select * from T where BirthDay between @from and @to , или его LINQ-аналог. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2012, 10:27 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей КНет! Да! Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2012, 10:31 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Или на сиквеле: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2012, 10:32 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Вариант на linq, если разница monthSpan <= 1 :) Код: c# 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2012, 10:45 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
МСУindex seek нам не нужен? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2012, 10:49 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей КМСУindex seek нам не нужен? Пох. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2012, 11:10 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
МСУАлексей Кпропущено... index seek нам не нужен? Пох.Согласен. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2012, 12:15 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Исправляю косяки linq-запроса, Лёня :) Код: c# 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 09:43 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Ну как так-то?! Код: c# 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 12:10 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей КНу как так-то?! А если мы выполним этот код 31.12.2012? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 12:34 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
МСУАлексей КНу как так-то?! А если мы выполним этот код 31.12.2012? :)Всё можно сломать, было бы желание. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 13:16 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Краевой эффект. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 13:19 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей КНу как так-то?! Код: c# 1. 2. 3. 4. 5. 6. 7.
Cпасибо всем работает, но надо что бы проверка была без года. Буду экспериментировать ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 14:54 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей К, вот у меня проблема как тогда в базе поменять года не трогая дня и месяца ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 15:20 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
VIT2708Алексей К, вот у меня проблема как тогда в базе поменять года не трогая дня и месяцаНу тогда моё решение Вам не подходит. Краевой эффект () опять же. Попробуйте развить идеи, предложенные МСУ. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 15:28 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей К, Подходит, только раз в год нажимать кнопку модификации года в базе ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 15:33 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей КVIT2708Алексей К, вот у меня проблема как тогда в базе поменять года не трогая дня и месяцаНу тогда моё решение Вам не подходит. Краевой эффект () опять же. Попробуйте развить идеи, предложенные МСУ. У него тоже в коде проблема что год берется текущий а в базе год остается старый ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 15:36 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
VIT2708У него тоже в коде проблема что год берется текущий а в базе год остается старыйТолько при сравнении год игнорируется. Жертвуем index seek, но без этого походу никак. В общем, можно как-то так: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 15:48 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей К, А если дата попадает на конец месяца? Извини что много вопросов я сайт делаю и сразу изучаю Linq ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 15:51 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
VIT2708А если дата попадает на конец месяца?Ну и что? Мне кажется, моё последнее решение работает и в этом случае. Тут надо пробовать. У меня сейчас Visual Studio под рукой нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 15:57 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей К, Спасибо! Сейчас поэкспериментирую ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 15:59 |
|
Linq и обрезаная дата
|
|||
---|---|---|---|
#18+
Алексей К, Огромнейшее спасибо я решил проблему protected void LinqDataSource2_Selecting(object sender, LinqDataSourceSelectEventArgs e) { const int Days = 7; var nowMonth = DateTime.Now.Month; var nowDay = DateTime.Now.Day; var filter = from f in dc.BirthDays let t1 = new DateTime(2013, nowMonth, nowDay) let t2 = t1.AddDays(Days) where f.birthday1_feild >= t1 && f.birthday1_feild <= t2 orderby f.birthday1_feild select f; e.Result = filter; } ... |
|||
:
Нравится:
Не нравится:
|
|||
14.05.2012, 16:15 |
|
|
start [/forum/topic.php?fid=17&msg=37793366&tid=1350347]: |
0ms |
get settings: |
17ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
135ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
others: | 306ms |
total: | 548ms |
0 / 0 |