2015-07-31 6 views
0

Привет StackOverflow мастераMysql между временем и датирует

Сегодня проблема сделать запрос в MySQL, мой стол:

CREATE TABLE IF NOT EXISTS `hala_wyplaty_promocje` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `user_id` int(11) NOT NULL, 
    `data_od` date NOT NULL, 
    `data_do` date NOT NULL, 
    `godzina_od` time NOT NULL, 
    `godzina_do` time NOT NULL, 
    `stawka` float NOT NULL, 
    PRIMARY KEY (`id`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=22 ; 

-- 
-- Zrzut danych tabeli `hala_wyplaty_promocje` 
-- 

INSERT INTO `hala_wyplaty_promocje` (`id`, `user_id`, `data_od`, `data_do`, `godzina_od`, `godzina_do`, `stawka`) VALUES 
(1, 0, '2026-07-20', '2027-08-20', '00:00:00', '00:00:00', 2.5), 
(3, 0, '0000-00-00', '0000-00-00', '00:00:00', '00:00:00', 1.7), 
(5, 0, '0000-00-00', '0000-00-00', '00:00:00', '00:00:00', 1.7), 
(7, 126, '0000-00-00', '2021-00-00', '00:00:00', '00:00:00', 3.2), 
(9, 26, '0000-00-00', '0000-00-00', '11:15:00', '12:15:00', 0), 
(11, 126, '0000-00-00', '0000-00-00', '11:15:00', '12:15:00', 5), 
(13, 126, '0000-00-00', '0000-00-00', '10:00:00', '20:00:00', 7), 
(15, 126, '2015-07-14', '2015-07-31', '12:00:00', '20:15:00', 8), 
(17, 126, '2015-07-21', '2015-07-31', '12:00:00', '18:00:00', 12), 
(19, 126, '2015-07-28', '2015-07-31', '15:00:00', '22:00:00', 22), 
(21, 126, '2015-07-22', '2015-07-31', '10:00:00', '18:00:00', 0.15); 

Я хочу, чтобы получить stawka значение на основе: если текущая дата/время между data_od+godzina_od - data_do+godzina_do. пока я даю мне даты или часы, я не знаю, как их объединить. веселит

+0

О слиянии поля DATE и TIME следующая тема должна помочь вам: http://stackoverflow.com/questions/3307522/add-date-and-time-fields-to-get-datetime- field-in-mysql –

+0

Тогда вы можете использовать 'SELECT stawka FROM hala_wyplaty_promocje WHERE NOW() BETWEEN ... AND ...' –

+0

works !! спасибо, я не думал, что функция concat работает в sql. post ur answer ill aprove it – binar

ответ

1

О слиянии DATE и поле TIME следующие темы должно помочь вам: stackoverflow.com/questions/3307522

Затем вы можете использовать SELECT, FROM stawka hala_wyplaty_promocje WHERE NOW() между ... и ...

Смежные вопросы