ФЗВ: Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) Нове |
14 серпня 2018 23:24:02 IP/Host: ---.pool.ukrtel.net
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
14 серпня 2018 23:32:49 IP/Host: 77.222.130.---
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
14 серпня 2018 23:33:59 IP/Host: 77.222.130.---
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
14 серпня 2018 23:35:06 IP/Host: ---.pool.ukrtel.net
|
получить день недели первого числа
используя полученную поправку получить дату последнего четверга
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
14 серпня 2018 23:37:17 IP/Host: 77.222.130.---
|
Розгорнути попередні цитати...получить день недели первого числа
используя полученную поправку получить дату последнего четвергатак але тоді не зробив одним запитом на листочку паперу :-)
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
14 серпня 2018 23:38:08 IP/Host: ---.pool.ukrtel.net
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
14 серпня 2018 23:38:40 IP/Host: ---.pool.ukrtel.net
|
Розгорнути попередні цитати...получить день недели первого числа
используя полученную поправку получить дату последнего четвергатак але тоді не зробив одним запитом на листочку паперу :-)если бы мне предложили такое делать "на листочке бумаги", я бы поблагодарил за потраченое время и ушел
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 01:01:11 IP/Host: ---.la.net.ua
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 01:16:09 IP/Host: ---.fibertel.com.ar
|
Була в мене співбесіда, вже не памятаю в яку канторку, років з 10 назад ...
три теоретичних питання і три задачки на селекти які тре було написати на листочку бумаги.
все зробив там по теорії щось про рівні ізоляцій транзакцій, по індексам а останню задачку не рішив.
Потім дома десь в 2-3 ночі її таки написав ...
Задачка наступна
є одна таблиця з полями
ID DATA
1 2013-05-06
2 2012-12-26
3 2011-07-07
Потрібно написати одним слектом який би вертав до кожного запису в таблиці дату осаннього четверга місяця в котрому та дата
ID DATA RESULT
1 2013-05-06 2013-05-29 (останній четвер місяця)
2 2012-12-26 ...
3 2011-07-07 ...
П.С. База MS SQL
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 01:16:49 IP/Host: ---.pool.ukrtel.net
|
На інтерна пробувався?
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 01:17:02 IP/Host: ---.fibertel.com.ar
|
Розгорнути попередні цитати...получить день недели первого числа
используя полученную поправку получить дату последнего четвергатак але тоді не зробив одним запитом на листочку паперу :-)если бы мне предложили такое делать "на листочке бумаги", я бы поблагодарил за потраченое время и ушел
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 01:48:44 IP/Host: ---.fibertel.com.ar
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 04:05:34 IP/Host: ---.mobile.att.net
|
Розгорнути попередні цитати...Була в мене співбесіда, вже не памятаю в яку канторку, років з 10 назад ...
три теоретичних питання і три задачки на селекти які тре було написати на листочку бумаги.
все зробив там по теорії щось про рівні ізоляцій транзакцій, по індексам а останню задачку не рішив.
Потім дома десь в 2-3 ночі її таки написав ...
Задачка наступна
є одна таблиця з полями
ID DATA
1 2013-05-06
2 2012-12-26
3 2011-07-07
Потрібно написати одним слектом який би вертав до кожного запису в таблиці дату осаннього четверга місяця в котрому та дата
ID DATA RESULT
1 2013-05-06 2013-05-29 (останній четвер місяця)
2 2012-12-26 ...
3 2011-07-07 ...
П.С. База MS SQLЯкби мені на співбесіді запропонували почати розв"язувати усяку подібну іксню на папірцю, я б подумав, що у цій "конторці" чокнуті працюють і відкинув б це місце, як кандидата на моє працевлаштування.
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 05:25:40 IP/Host: ---.fibertel.com.ar
|
Розгорнути попередні цитати...Була в мене співбесіда, вже не памятаю в яку канторку, років з 10 назад ...
три теоретичних питання і три задачки на селекти які тре було написати на листочку бумаги.
все зробив там по теорії щось про рівні ізоляцій транзакцій, по індексам а останню задачку не рішив.
Потім дома десь в 2-3 ночі її таки написав ...
Задачка наступна
є одна таблиця з полями
ID DATA
1 2013-05-06
2 2012-12-26
3 2011-07-07
Потрібно написати одним слектом який би вертав до кожного запису в таблиці дату осаннього четверга місяця в котрому та дата
ID DATA RESULT
1 2013-05-06 2013-05-29 (останній четвер місяця)
2 2012-12-26 ...
3 2011-07-07 ...
П.С. База MS SQLЯкби мені на співбесіді запропонували почати розв"язувати усяку подібну іксню на папірцю, я б подумав, що у цій "конторці" чокнуті працюють і відкинув б це місце, як кандидата на моє працевлаштування.Жаль, значит вьі откажитесь работать в Google. Тут предлагают решать задачки у доски
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 08:24:42 IP/Host: ---.gateway.kharkov.ua
|
Розгорнути попередні цитати...Була в мене співбесіда, вже не памятаю в яку канторку, років з 10 назад ...
три теоретичних питання і три задачки на селекти які тре було написати на листочку бумаги.
все зробив там по теорії щось про рівні ізоляцій транзакцій, по індексам а останню задачку не рішив.
Потім дома десь в 2-3 ночі її таки написав ...
Задачка наступна
є одна таблиця з полями
ID DATA
1 2013-05-06
2 2012-12-26
3 2011-07-07
Потрібно написати одним слектом який би вертав до кожного запису в таблиці дату осаннього четверга місяця в котрому та дата
ID DATA RESULT
1 2013-05-06 2013-05-29 (останній четвер місяця)
2 2012-12-26 ...
3 2011-07-07 ...
П.С. База MS SQLЯкби мені на співбесіді запропонували почати розв"язувати усяку подібну іксню на папірцю, я б подумав, що у цій "конторці" чокнуті працюють і відкинув б це місце, як кандидата на моє працевлаштування.Жаль, значит вьі откажитесь работать в Google. Тут предлагают решать задачки у доски
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 08:56:25 IP/Host: ---.opera-mini.net
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 09:14:28 IP/Host: 193.19.84.---
|
SELECT
[id],
[date],
[last_date],
DATEADD(d, 4 - DATEPART(dw, [last_date]) - CASE WHEN DATEPART(dw, [last_date]) < 4 THEN 7 ELSE 0 END, [last_date]) AS [last_thursday]
FROM (
SELECT
[id],
[date],
CAST(DATEADD(d,-1, DATEADD(mm, DATEDIFF(m,0,[date])+1,0)) AS DATE) AS [last_date]
FROM #test
) ps;
SELECT
[id],
[date],
[last_date] ,
DATEADD(d, 4 - DATEPART(dw, [last_date]), [last_date] - CASE WHEN DATEPART(dw, [last_date]) < 4 THEN 7 ELSE 0 END) AS [last_thursday]
FROM (
SELECT
[id],
[date],
EOMONTH([date]) AS [last_date]
FROM #test
) ps;
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 09:47:20 IP/Host: 77.222.130.---
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 10:31:56 IP/Host: ---.kram.ua
|
Розгорнути попередні цитати...Якби мені на співбесіді запропонували почати розв"язувати усяку подібну іксню на папірцю, я б подумав, що у цій "конторці" чокнуті працюють і відкинув б це місце, як кандидата на моє працевлаштування.Жаль, значит вьі откажитесь работать в Google. Тут предлагают решать задачки у доскивот шото мне подсказывает что там не гугл был
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 11:58:13 IP/Host: ---.fibertel.com.ar
|
Схема проста
У місяцях різна кількість днів. Тож треба танцювати від кінця місяця. Визначаємо останній день місяця, його номер у тижні, і відступаємо до найближчого четвертого дня тижня
Старий MSSQL (до 2012)Код: [Select]SELECT
Новий
[id],
[date],
[last_date],
DATEADD(d, 4 - DATEPART(dw, [last_date]) - CASE WHEN DATEPART(dw, [last_date]) < 4 THEN 7 ELSE 0 END, [last_date]) AS [last_thursday]
FROM (
SELECT
[id],
[date],
CAST(DATEADD(d,-1, DATEADD(mm, DATEDIFF(m,0,[date])+1,0)) AS DATE) AS [last_date]
FROM #test
) ps;Код: [Select]SELECT
[id],
[date],
[last_date] ,
DATEADD(d, 4 - DATEPART(dw, [last_date]), [last_date] - CASE WHEN DATEPART(dw, [last_date]) < 4 THEN 7 ELSE 0 END) AS [last_thursday]
FROM (
SELECT
[id],
[date],
EOMONTH([date]) AS [last_date]
FROM #test
) ps;
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 12:04:47 IP/Host: ---.fibertel.com.ar
|
Чи потрібно в голові тримати назви всіх функцій роботи з датами?
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 12:25:59 IP/Host: ---.pool.ukrtel.net
|
Якщо хто хоче і напише зараз один селект із студентів чи молодих та амбіційних .
Обіщаю що рекомендую на передостаннє місце своєї роботи. Вони якраз шукають молодого спеціаліста по БД. Мене недавно запитували чи не можу кого їм порекомендувати.
м.Київ
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 13:15:57 IP/Host: ---.kram.ua
|
Розгорнути попередні цитати...Якщо хто хоче і напише зараз один селект із студентів чи молодих та амбіційних .
Обіщаю що рекомендую на передостаннє місце своєї роботи. Вони якраз шукають молодого спеціаліста по БД. Мене недавно запитували чи не можу кого їм порекомендувати.
м.КиївЗнаючи тебе, що ти задницею відчуває неприємності і звідти втік, то від тої фірмочки краще триматись подалі.
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 13:38:42 IP/Host: ---.opera-mini.net
|
Розгорнути попередні цитати...Якби мені на співбесіді запропонували почати розв"язувати усяку подібну іксню на папірцю, я б подумав, що у цій "конторці" чокнуті працюють і відкинув б це місце, як кандидата на моє працевлаштування.Жаль, значит вьі откажитесь работать в Google. Тут предлагают решать задачки у доскиЯкщо Гуглю мене потрібно буде, хай стає у чергу
:
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 13:40:42 IP/Host: 193.19.84.---
|
Розгорнути попередні цитати...Схема проста
У місяцях різна кількість днів. Тож треба танцювати від кінця місяця. Визначаємо останній день місяця, його номер у тижні, і відступаємо до найближчого четвертого дня тижня
Старий MSSQL (до 2012)Код: [Select]SELECT
Новий
[id],
[date],
[last_date],
DATEADD(d, 4 - DATEPART(dw, [last_date]) - CASE WHEN DATEPART(dw, [last_date]) < 4 THEN 7 ELSE 0 END, [last_date]) AS [last_thursday]
FROM (
SELECT
[id],
[date],
CAST(DATEADD(d,-1, DATEADD(mm, DATEDIFF(m,0,[date])+1,0)) AS DATE) AS [last_date]
FROM #test
) ps;Код: [Select]SELECT
[id],
[date],
[last_date] ,
DATEADD(d, 4 - DATEPART(dw, [last_date]), [last_date] - CASE WHEN DATEPART(dw, [last_date]) < 4 THEN 7 ELSE 0 END) AS [last_thursday]
FROM (
SELECT
[id],
[date],
EOMONTH([date]) AS [last_date]
FROM #test
) ps;Datepart дає четвер як 5-ий день, мені здається.
То ж англосакси, у них неділя - перший день тижня, а не понеділок.
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 16:38:56 IP/Host: ---.181-13-69.telecom.net.ar
|
Розгорнути попередні цитати...Схема проста
У місяцях різна кількість днів. Тож треба танцювати від кінця місяця. Визначаємо останній день місяця, його номер у тижні, і відступаємо до найближчого четвертого дня тижня
Старий MSSQL (до 2012)Код: [Select]SELECT
Новий
[id],
[date],
[last_date],
DATEADD(d, 4 - DATEPART(dw, [last_date]) - CASE WHEN DATEPART(dw, [last_date]) < 4 THEN 7 ELSE 0 END, [last_date]) AS [last_thursday]
FROM (
SELECT
[id],
[date],
CAST(DATEADD(d,-1, DATEADD(mm, DATEDIFF(m,0,[date])+1,0)) AS DATE) AS [last_date]
FROM #test
) ps;Код: [Select]SELECT
[id],
[date],
[last_date] ,
DATEADD(d, 4 - DATEPART(dw, [last_date]), [last_date] - CASE WHEN DATEPART(dw, [last_date]) < 4 THEN 7 ELSE 0 END) AS [last_thursday]
FROM (
SELECT
[id],
[date],
EOMONTH([date]) AS [last_date]
FROM #test
) ps;Datepart дає четвер як 5-ий день, мені здається.
То ж англосакси, у них неділя - перший день тижня, а не понеділок.ну не розписувати ж до останньої коми
SET DATEFIRST 1;
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 17:21:25 IP/Host: ---.uc.infovia.com.ar
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 17:32:38 IP/Host: ---.dialup.umc.net.ua
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 18:36:42 IP/Host: ---.lmnet.cv.ua
|
Там у мене помилка
Тре
DATEADD(d, (4 - DATEPART(dw, [last_date]) - CASE WHEN DATEPART(dw, [last_date]) < 4 THEN 7 ELSE 0 END), [last_date]) AS [last_thursday]
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
15 серпня 2018 19:23:38 IP/Host: 104.132.24.---
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
16 серпня 2018 13:28:24 IP/Host: 77.222.130.---
|
Якщо б така задача була реальна, то я б просто завів окрему таблицю всіх четвергів кожного місяця і джойнив би. Одним дуже коротким, дуже простим селектом. Було б практично і maintainable.
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
16 серпня 2018 15:09:07 IP/Host: 104.132.24.---
|
Розгорнути попередні цитати...Якщо б така задача була реальна, то я б просто завів окрему таблицю всіх четвергів кожного місяця і джойнив би. Одним дуже коротким, дуже простим селектом. Було б практично і maintainable.нуфу!
Детальнее пояснять?
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
16 серпня 2018 15:19:00 IP/Host: 104.132.24.---
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
17 серпня 2018 19:15:27 IP/Host: ---.gateway.kharkov.ua
|
Розгорнути попередні цитати...Якщо б така задача була реальна, то я б просто завів окрему таблицю всіх четвергів кожного місяця і джойнив би. Одним дуже коротким, дуже простим селектом. Було б практично і maintainable.нуфу!
Детальнее пояснять?Будь ласка
Я думаю, що ціна такого рішення дуже невелика, код буде дуже простий, дуже важко зробити помилку при всяких майбутніх змінах. По швидкості скоріш за все ні на що не впливає, якщо це тільки не в якомусь внутрішньому циклі. Таблиця з четвергами також майже нічого не коштує. (Це практично як без SQL в звичайному коді задати констатами).
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
17 серпня 2018 19:43:09 IP/Host: ---.nos-oignons.net
|
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
17 серпня 2018 20:07:02 IP/Host: 31.10.157.---
|
но, опять таки - it depends
во многих случаях выгодно сделать более простой алгоритм с лишней таблицей/джойном, чем заморачивать себя и будущего разработчика "хирым вывихом", в котором еще и разбираться надо будет
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
17 серпня 2018 20:35:54 IP/Host: ---.pool.ukrtel.net
|
конкретный язык не важен
важно , как мозги работают
алгоритм решения простой, определяешь день недели первого числа следующего месяца и вычитаешь от этой даты (первого числа следующего месяца) соответствующее количество дней
для большинства языков, даже если ты первый раз на нем пишешь, реализация такого - это 15 минут гугления
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) |
17 серпня 2018 21:08:16 IP/Host: 31.10.157.---
|
Розгорнути попередні цитати...конкретный язык не важен
важно , как мозги работают
алгоритм решения простой, определяешь день недели первого числа следующего месяца и вычитаешь от этой даты (первого числа следующего месяца) соответствующее количество дней
для большинства языков, даже если ты первый раз на нем пишешь, реализация такого - это 15 минут гуглениябез гугла, на клаптику паперу, в стресові ситуації , коли крім цієї ще декілька задач і обмежений час - доволі складно було ...
Re: ФЗВ Помогите с SQL запросом-6 (або задачка на співбесіді яку я не вирішив) Нове |
18 серпня 2018 00:46:07 IP/Host: 195.64.182.---
|