Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите правильно откорректировать запрос / 7 сообщений из 7, страница 1 из 1
24.01.2017, 16:53
    #39390467
imediasun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите правильно откорректировать запрос
Я хочу чтобы было добавленно условие если в таблице wpjj_postmeta в поле 'meta_value' есть фраза киев

Database Error; SQL:


SELECT DISTINCT `t`.* FROM `wpjj_posts` AS `t` LEFT JOIN `wpjj_postmeta` AS `start_of_game` ON `start_of_game`.`meta_key` = 'start_of_game' AND `start_of_game`.`post_id` = `t`.`ID` WHERE ( ( (DATE_FORMAT(NOW(), "%d-%m-%Y %H:%i") <= DATE_FORMAT(`start_of_game`.`meta_value`, "%d-%m-%Y %H:%i")) AND WHERE Contains(`meta_value`,"киев") ) AND ( `t`.`post_type` = "game" ) AND ( `t`.`post_status` IN ( "publish" ) ) ) ORDER BY `start_of_game`.`meta_value` ASC, `t`.`menu_order`, `t`.`post_title`, `t`.`post_date` LIMIT 0, 9;


Response: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'WHERE Contains(`meta_value`,"киев") ) AND ( `t`.`post_type` = "game" ) AND (' at line 11

Что мне исправить в запросе
...
Рейтинг: 0 / 0
24.01.2017, 16:57
    #39390470
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите правильно откорректировать запрос
imediasun
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT DISTINCT `t`.* 
FROM `wpjj_posts` AS `t` 
LEFT JOIN `wpjj_postmeta` AS `start_of_game` ON `start_of_game`.`meta_key` = 'start_of_game' AND `start_of_game`.`post_id` = `t`.`ID` 
WHERE ( ( (DATE_FORMAT(NOW(), "%d-%m-%Y %H:%i") <= DATE_FORMAT(`start_of_game`.`meta_value`, "%d-%m-%Y %H:%i")) 
AND WHERE Contains(`meta_value`,"киев") ) 
AND ( `t`.`post_type` = "game" ) 
AND ( `t`.`post_status` IN ( "publish" ) ) ) 
ORDER BY `start_of_game`.`meta_value` ASC, `t`.`menu_order`, `t`.`post_title`, `t`.`post_date` 
LIMIT 0, 9;
...
Рейтинг: 0 / 0
24.01.2017, 17:07
    #39390479
imediasun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите правильно откорректировать запрос
так где ошибка помоему так же написано
...
Рейтинг: 0 / 0
24.01.2017, 17:10
    #39390483
imediasun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите правильно откорректировать запрос
у меня просто в вордпресе формируется этот запрос не знаю где тут ошибка

else if (isset($_GET['city']))
{
$paramString = ' AND WHERE `meta_value` CONTAINS "'.$_GET['city'].'"';
}

$params = array(

'orderby' => 'start_of_game ASC',

'where' => '(DATE_FORMAT(NOW(), "%d-%m-%Y %H:%i") <= DATE_FORMAT(`start_of_game`.`meta_value`, "%d-%m-%Y %H:%i"))'.$paramString,

'limit' => 9

);
...
Рейтинг: 0 / 0
24.01.2017, 17:28
    #39390496
imediasun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите правильно откорректировать запрос

SELECT DISTINCT `t`.* FROM `wpjj_posts` AS `t` LEFT JOIN `wpjj_postmeta` AS `start_of_game` ON `start_of_game`.`meta_key` = 'start_of_game' AND `start_of_game`.`post_id` = `t`.`ID` WHERE ( ( (DATE_FORMAT(NOW(), "%d-%m-%Y %H:%i") <= DATE_FORMAT(`start_of_game`.`meta_value`, "%d-%m-%Y %H:%i")) AND WHERE CONTAINS (`meta_value` , "киев") ) AND ( `t`.`post_type` = "game" ) AND ( `t`.`post_status` IN ( "publish" ) ) ) ORDER BY `start_of_game`.`meta_value` ASC, `t`.`menu_order`, `t`.`post_title`, `t`.`post_date` LIMIT 0, 9;


Так где здесь конкретно ошибка?
...
Рейтинг: 0 / 0
24.01.2017, 18:53
    #39390585
imediasun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите правильно откорректировать запрос
Код: sql
1.
SELECT DISTINCT `t`.* FROM `wpjj_posts` AS `t` LEFT JOIN `wpjj_postmeta` AS `start_of_game` ON `start_of_game`.`meta_key` = 'start_of_game' AND `start_of_game`.`post_id` = `t`.`ID` LEFT JOIN `wpjj_postmeta` AS `wpjj_postmeta` ON `wpjj_postmeta`.`meta_key` = 'wpjj_postmeta' AND `wpjj_postmeta`.`post_id` = `t`.`ID` WHERE ( ( (DATE_FORMAT(NOW(), "%d-%m-%Y %H:%i") <= DATE_FORMAT(`start_of_game`.`meta_value`, "%d-%m-%Y %H:%i")) AND CONTAINS (`wpjj_postmeta`.`meta_value` , "Киев") ) AND ( `t`.`post_type` = "game" ) AND ( `t`.`post_status` IN ( "publish" ) ) ) ORDER BY `start_of_game`.`meta_value` ASC, `t`.`menu_order`, `t`.`post_title`, `t`.`post_date` LIMIT 0, 9 



Вот здесь ошибки нет но и выдачи нет, где искать в чем дело, хотя в таблице `wpjj_postmeta`.`meta_value` есть столбцы с буквами Киев
...
Рейтинг: 0 / 0
24.01.2017, 20:18
    #39390632
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите правильно откорректировать запрос
imediasunТак где здесь конкретно ошибка?Я ж тебе специально красным фоном выделил! или ты ответы вообще не читаешь?
imediasunздесь ошибки нет но и выдачи нет, где искать в чем дело, хотя в таблице `wpjj_postmeta`.`meta_value` есть столбцы с буквами Киев
Ошибка есть. Заключается она в том, что для строковых значений использовать функции, обрабатывающие геометрические типы, абсолютно бессмысленно.
Замените CONTAINS() на INSTR(). И не ставьте пробелов между именем функции и скобкой.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите правильно откорректировать запрос / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]