Почему то не работает, всё по имени по алфовиту, но идут "есть в наличии" и "нет в наличии" в перемешку
Странно... Я хоть и приболел, но мой больной разум выдал вроде бы правильную конструкцию (ибо она элементарна)... Дай дамп таблицы (если возможно) что бы можно было посмотреть что и как.
Спасибо VDShark, всегда выручаешь! Вот дамп: Code: CREATE TABLE `products` ( `prodid` int(10) NOT NULL DEFAULT '0', `podcatid` varchar(255) NOT NULL DEFAULT '0', `name` varchar(255) NOT NULL DEFAULT '', `price` float(11,2) NOT NULL DEFAULT '0.00', `opis` text NOT NULL, `catid` int(10) NOT NULL DEFAULT '0', `podpodcatid` int(11) DEFAULT NULL, `podpodpodcatid` int(11) DEFAULT NULL, `price2` float(11,2) DEFAULT NULL, `nal` varchar(255) DEFAULT NULL, `opis1` text, `art` varchar(255) NOT NULL DEFAULT '', `nov` int(11) NOT NULL DEFAULT '0', `ras` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`prodid`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
mff Говоря дамп я имел ввиду с данными.. хотя нужно было уточнить конечно А то самому выдумывать не улыбается. Дай данных для теста чуток... Если не хочешь здесь палить - можешь стукнуться в аську или пм.
У меня по запросу Code: SELECT * FROM `products` WHERE `name` LIKE '%амул%' ORDER BY `nal` DESC , `name` все отлично отсортировало Показывай какой ты запрос пишешь.
Code: $arr = DbQueryToArray("SELECT * FROM `products` WHERE `name` like '%".$search."%' ORDER BY `nal` DESC,`name`"); и Code: $count = DbQueryToArray('select count(*) from `products` WHERE `name` like "%'.$search.'%"');
Выполни в консоли мускула и посмотри на результат... так же перемешанно или нет? Есть подозреие что ф-ция DbQueryToArray как то мешает результат (это что то самописное?).
Здравствуйте! Нужно сделать выборку из таблицы по условию: если первый символ в значении cname равен числу ([0-9]). Думаю, что должно выглядеть как то вот так: Code: SELECT * FROM cat_b WHERE cname LIKE '[0-9]%' Поправьте меня пожалуйста, подскажите как правильно
Мыслиш в правильном направлении, но LIKE тут не проканает. Надо заюзать регулярку - благо мускул (как и постгре и некоторые другие) их нынче держит http://dev.mysql.com/doc/refman/5.1/en/regexp.html Примерно эт будет так Code: cname REGEXP '^[0-9].*'
Здравствуйте. Появился ещё один вопрос - Как правильно хранить дату в базе MySQL? Подкиньте пожалуйста пример, как правильно занести в базу и какого типа должна быть эта база? Мне нужно хранить в базе Дату Рождения, которую Я получаю в виде: $d - день [в виде двух цифр - пример 02] $m - месяц [в виде двух цифр - пример 12] $y - год [в виде 4 цифр - пример 1985] В phpMyAdmin есть тип таблицы DATE, в чём его отличие, на пример, от TINYTEXT? Заранее благодарен, Большое Спасибо!
Отличие DATE от того же TINITEXT в том, что ты можешь работать с датой на уровне СУБД (впринципе сможешь и с TEXT, только конвертить прийдется). Если тебе на стороне клиента дату разными способами отображать не приходится - то смело можешь хранить в формате DATE (либо DATETIME). Если же у тебя большое количество вариаций, то имхо лучше в СУБД хранить никс таймштамп и конвертить вне СУБД (тот же пых, или что ты там используешь) в нужный формат.
Окей, а как потом работать с датой? Мне нужно будет делать выборки, например: показать все записи с датой от 01.01.08 до 01.01.09
Подскажите: как правильно заносить в базу данные вроде Agent's Name, в строке встречается апостроф, поле в MySQL - TINYTEXT. Сейчас решил, что можно делать через: addslashes() при добавлении записи в базу и stripslahes() при выводе строки из базы, но не думаю, что это правильный путь, уверен что есть более удобный вариант.