2016-08-03 2 views
0

У меня есть таблица, в которой хранятся предложения, и я хочу отображать только те записи, у которых есть 50% (подстрока «50%» в них).Как получить числовые значения из sql-запроса

Это моя таблица схема: enter image description here Пример запись будет:

FLAT 50% скидка на билетах ESSEL мира въездных и многих других.
FLAT 50% Выкл. Rs
выше. U.S polo - Upto 50% off

Как я могу составить запрос SQL для их выбора? Имя столбца поля называется coupon_name

+0

использование подстановочных знаков '%' – Saurabh

+0

Является ли каждая строка форматированной одинаковой? Будет ли% всегда быть двумя цифрами? –

+0

Каковы таблицы и структура столбцов? и запрос, который вы попробовали? – Riad

ответ

0

Как будет делать ..

select * from table 
    where coupon_name like '%50[%]%' 

Это даст все записи, как показано ниже один, имеющий 250, это может быть действительным, так как процент не может быть больше, чем 100

sakfjfjk50%sfjbsadjkfbjksdf 
sakfjfjk250%sfjbsadjkfbjksdf 
+0

не должен ли он '% 50 \ %%'? – Riad

+0

его работа отлично, но мне нужны только записи, которые имеют только 50% –

0

Я вам нужна запись, содержащую '50%»вы можете использовать:

SELECT * 
FROM YourTable 
WHERE coupon_name LIKE '%50[%]%' 

Или использовать ESCAPE:

SELECT * 
FROM YourTable 
WHERE coupon_name LIKE '%50\%%' ESCAPE '\' 

Или:

SELECT * 
FROM YourTable 
WHERE coupon_name LIKE '%50|%%' ESCAPE '|' 

Третий должен работать в MySQL и SQL Server.

+0

# 1064 - У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с 'ELECT * FROM Vcom WHERE coupon_title LIKE'% 50 \ %% 'LIMIT 0, 30' в строке 1 –

+0

SELECT * FROM YourTable WHERE coupon_name LIKE '% 50 [%]%' возвращает нулевые строки –

+0

@pawal все еще нулевые строки SELECT * FROM Vcom WHERE coupon_title LIKE '% 50 | %%' –

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