|
|
|
| Ребят, помогите пожалуйста, немогу решить проблему.
В базе данных mysql есть таблица со строкой data, значение строки в таком формате 01.05.2013
Необходимо создать правильный запрос к базе, чтобы выбрать все строки где в data есть к примеру 05 и 2013, или 07 и 2014 в таком духе. У кого есть варианты, рад услышать. | |
|
|
|
|
|
|
|
для: amsokol
(01.05.2013 в 20:50)
| | В базе дату нужно хранить не в строке, а поле типа date, и надлежащем формате YYYY-mm-dd, тогда и проблем с выбором не будет. Переделайте. | |
|
|
|
|
|
|
|
для: confirm
(01.05.2013 в 21:12)
| | иногда еще довольно удобно использовать int(11) | |
|
|
|
|
|
|
|
для: psychomc
(01.05.2013 в 21:24)
| | Чтобы в timestamp хранить? Так такой тип поля и так есть. | |
|
|
|
|
|
|
|
для: confirm
(01.05.2013 в 21:30)
| | да, есть. но не во всех же субд
вот интересный рассуждения на этот счет http://pavel-koryagin.livejournal.com/15512.html
ну и многие популярные cms используют int
p.s прекрасно понимаю, что в таком случае нельзя использовать встроенные функции, которые можно использовать для работы с полями типа date/datetime/time/timestamp, но не припомню на своей практике (может быть не очень большой), чтобы из-за этого были какие-то трудности | |
|
|
|
|
|
|
|
для: psychomc
(01.05.2013 в 21:38)
| | С полем TIMESTAMP как раз никаких трудностей нет, а вот держать в строке типа 01.05.2013, это ни к чему. | |
|
|
|
|
|
|
|
для: confirm
(01.05.2013 в 21:58)
| | >а вот держать в строке типа 01.05.2013
хм, это наверное даже epic fail... | |
|
|
|
|
|
|
|
для: psychomc
(01.05.2013 в 22:01)
| | Что вы говорите...
Дата это вообще формат своеобразный, и представлений, и условий по выборке может требоваться множество. И вы хотите сказать, что ваша строка это как раз то что и нужно в данном случае?
Ну-ну.... | |
|
|
|
|
|
|
|
для: confirm
(01.05.2013 в 22:16)
| | >И вы хотите сказать, что ваша строка это как раз то что и нужно в данном случае?
О_о я ничего такого не говорил... | |
|
|
|
|
|
|
|
для: psychomc
(01.05.2013 в 22:21)
| | Извиняюсь, даже не знаю с чего я взял, что это коммент автора топика... Даже подумал, вот паразит, еще и издевается.. :) | |
|
|
|
|
|
|
|
для: confirm
(01.05.2013 в 22:24)
| | ничего страшного, бывает) | |
|
|
|
|
|
|
|
для: amsokol
(01.05.2013 в 20:50)
| | Можно использовать запросы вида
SELECT * FROM data LIKE '%.05.2013'
|
| |
|
|
|
|
|
|
|
для: cheops
(01.05.2013 в 21:18)
| | Спасибо за ответ, Тема закрыта | |
|
|
|
|
|
|
|
для: amsokol
(01.05.2013 в 22:03)
| | LIKE в данном случае неоправданная нагрузка на БД. | |
|
|
|
|
|
|
|
для: Valick
(03.05.2013 в 12:57)
| | Не известно на самом деле оправданная или не оправданная, у нас нет данных по объемам базы и количеству запросов. Но то, что это один самых медленных вариантов - никаких сомнений. | |
|
|
|