Используя ЗАМЕНЯЮТ () в ИЗБРАННОМ MySQL

Я приношу извинения заранее за выяснение, что я уверен, окажется, будет очень простым вопросом.

У меня есть база данных MySQL (5.5), которая включает, среди других вещей, области для номеров телефона. Я пытаюсь создать заявление, которое будет искать ту область, снимая любые места. Так поиск '0208' возвратится '020 8', '02 08', '0 208', '0208', и т.д.

И это находится в Delphi XE2, в случае, если это имеет значение.

'SELECT * FROM sales_ledger WHERE REPLACE(telephone, " ", "") LIKE "%' + SearchEdit.Text + '%"'

... дает мне ошибку...

Инвалид просачивается оператор Where

... и...

'SELECT REPLACE(telephone, " ", "") FROM sales_ledger WHERE REPLACE(telephone, " ", "") LIKE "%' + SearchEdit.Text + '%"'

... дает мне...

Недействительное имя поля. Общая ошибка SQL. Колонка, не найденная.

... и мне действительно на самом деле нужны все области, возвращенные так или иначе.

Я могу попросить некоторую помощь в исправлении синтаксиса, пожалуйста. Если вам нужно больше информации, пожалуйста спросите. Большое спасибо за ваше время.

Править: Одна потенциально критическая информация я пропустил. Стол - на самом деле база данных Sage, к которой я получаю доступ через ODBC. Поскольку ничто, что я пробую, не работает, который может быть проблемой корня. Извинения за то, что не было сказано это ранее.

10

6 ответы

Ваш Вопрос Кажется Хорошо работающим, посмотрите демонстрационный пример

Сначала попробуйте этот вопрос вам Клиент DB

SELECT * FROM sales_ledger 
WHERE REPLACE(telephone, " ", "") LIKE "%0208%"

ОТРЕДАКТИРУЙТЕ:

если вы, все еще подвергаете сомнению не работает. товарищ шаг за шагом обрабатывает.

    попытка <лития> управлять простым запросом Select ( ВЫБИРАЮТ * ИЗ sales_ledger )
  • , если первая попытка пробега вопроса, добавляющая простой, где условие. таким образом шаг за шагом можно ли сделать вопрос подобным оригинальному и найти ли, откуда фактическая ошибка.
6
добавлено
должен работать. какой язык вы используете. можно ли дать нам кодовый блок, который вы используете, чтобы выполнить вопрос?
добавлено автор Champ, источник
, ИЗБРАННЫЙ * ОТ sales_ledger, ГДЕ телефон КАК "% ' + SearchEdit. Текст + ' %" - работы. , ИЗБРАННЫЙ * ОТ sales_ledger, ГДЕ ЗАМЕНЯЮТ (телефон, "", "") КАК "% ' + SearchEdit. Текст + ' %" - не работает.
добавлено автор Jon K., источник
Извините за задержку, первый день по возвращении на работе... Используя Дельфи с этим кодом: Query1. Близко; Query1. SQL.Clear; Query1. SQL.Add (' ВЫБЕРИТЕ * ИЗ sales_ledger, ГДЕ ЗАМЕНЯЮТ (телефон, "", "") КАК "% ' + SearchEdit. Текст + ' %" '); Query1. Открытый;
добавлено автор Jon K., источник
Все еще рабочий Чемпион, но I' ve отредактировал оригинальную почту с большей информацией, которая может иметь значение. Спасибо за ответ!
добавлено автор Jon K., источник

Ваш Вопрос Кажется Хорошо работающим, посмотрите демонстрационный пример

Сначала попробуйте этот вопрос вам Клиент DB

SELECT * FROM sales_ledger 
WHERE REPLACE(telephone, " ", "") LIKE "%0208%"

ОТРЕДАКТИРУЙТЕ:

если вы, все еще подвергаете сомнению не работает. товарищ шаг за шагом обрабатывает.

    попытка <лития> управлять простым запросом Select ( ВЫБИРАЮТ * ИЗ sales_ledger )
  • , если первая попытка пробега вопроса, добавляющая простой, где условие. таким образом шаг за шагом можно ли сделать вопрос подобным оригинальному и найти ли, откуда фактическая ошибка.
6
добавлено
должен работать. какой язык вы используете. можно ли дать нам кодовый блок, который вы используете, чтобы выполнить вопрос?
добавлено автор Champ, источник
Все еще рабочий Чемпион, но I' ve отредактировал оригинальную почту с большей информацией, которая может иметь значение. Спасибо за ответ!
добавлено автор Jon K., источник
, ИЗБРАННЫЙ * ОТ sales_ledger, ГДЕ телефон КАК "% ' + SearchEdit. Текст + ' %" - работы. , ИЗБРАННЫЙ * ОТ sales_ledger, ГДЕ ЗАМЕНЯЮТ (телефон, "", "") КАК "% ' + SearchEdit. Текст + ' %" - не работает.
добавлено автор Jon K., источник
Извините за задержку, первый день по возвращении на работе... Используя Дельфи с этим кодом: Query1. Близко; Query1. SQL.Clear; Query1. SQL.Add (' ВЫБЕРИТЕ * ИЗ sales_ledger, ГДЕ ЗАМЕНЯЮТ (телефон, "", "") КАК "% ' + SearchEdit. Текст + ' %" '); Query1. Открытый;
добавлено автор Jon K., источник

Ваш Вопрос Кажется Хорошо работающим, посмотрите демонстрационный пример

Сначала попробуйте этот вопрос вам Клиент DB

SELECT * FROM sales_ledger 
WHERE REPLACE(telephone, " ", "") LIKE "%0208%"

ОТРЕДАКТИРУЙТЕ:

если вы, все еще подвергаете сомнению не работает. товарищ шаг за шагом обрабатывает.

    попытка <лития> управлять простым запросом Select ( ВЫБИРАЮТ * ИЗ sales_ledger )
  • , если первая попытка пробега вопроса, добавляющая простой, где условие. таким образом шаг за шагом можно ли сделать вопрос подобным оригинальному и найти ли, откуда фактическая ошибка.
6
добавлено
должен работать. какой язык вы используете. можно ли дать нам кодовый блок, который вы используете, чтобы выполнить вопрос?
добавлено автор Champ, источник
, ИЗБРАННЫЙ * ОТ sales_ledger, ГДЕ телефон КАК "% ' + SearchEdit. Текст + ' %" - работы. , ИЗБРАННЫЙ * ОТ sales_ledger, ГДЕ ЗАМЕНЯЮТ (телефон, "", "") КАК "% ' + SearchEdit. Текст + ' %" - не работает.
добавлено автор Jon K., источник
Извините за задержку, первый день по возвращении на работе... Используя Дельфи с этим кодом: Query1. Близко; Query1. SQL.Clear; Query1. SQL.Add (' ВЫБЕРИТЕ * ИЗ sales_ledger, ГДЕ ЗАМЕНЯЮТ (телефон, "", "") КАК "% ' + SearchEdit. Текст + ' %" '); Query1. Открытый;
добавлено автор Jon K., источник
Все еще рабочий Чемпион, но I' ve отредактировал оригинальную почту с большей информацией, которая может иметь значение. Спасибо за ответ!
добавлено автор Jon K., источник

Попытка это::

SELECT 
REPLACE(telephone,' ', '') as replacedColumn
FROM sales_ledger 


WHERE REPLACE(telephone,' ', '') LIKE '%"+ SearchEdit.Text +"%'"

ИЛИ

Select temp1.* 
from
(
SELECT 
REPLACE(telephone,' ', '') as replacedColumn
FROM sales_ledger 
) as temp1

WHERE temp1.replacedColumn LIKE '%"+SearchEdit.Text+"%'"
3
добавлено
Отредактировали, пожалуйста, попробуйте теперь..:-),
добавлено автор Sashi Kant, источник
Первый вопрос или второй?
добавлено автор Sashi Kant, источник
Первое заявление возвращает другой ' Колонка не found' ошибка и второе получают меня ' Недействительный стол specification' ошибка. I' ve добавил информацию к оригинальной почте и извинениям за то, что не был упомянут он сначала время. Спасибо за ваше время!
добавлено автор Jon K., источник
Второй.
добавлено автор Jon K., источник
Теперь добираясь ' Стол не существует. Общая ошибка SQL. Стол, не найденный ' Еще раз спасибо.
добавлено автор Jon K., источник

Попытка это::

SELECT 
REPLACE(telephone,' ', '') as replacedColumn
FROM sales_ledger 


WHERE REPLACE(telephone,' ', '') LIKE '%"+ SearchEdit.Text +"%'"

ИЛИ

Select temp1.* 
from
(
SELECT 
REPLACE(telephone,' ', '') as replacedColumn
FROM sales_ledger 
) as temp1

WHERE temp1.replacedColumn LIKE '%"+SearchEdit.Text+"%'"
3
добавлено
Отредактировали, пожалуйста, попробуйте теперь..:-),
добавлено автор Sashi Kant, источник
Первый вопрос или второй?
добавлено автор Sashi Kant, источник
Второй.
добавлено автор Jon K., источник
Теперь добираясь ' Стол не существует. Общая ошибка SQL. Стол, не найденный ' Еще раз спасибо.
добавлено автор Jon K., источник
Первое заявление возвращает другой ' Колонка не found' ошибка и второе получают меня ' Недействительный стол specification' ошибка. I' ve добавил информацию к оригинальной почте и извинениям за то, что не был упомянут он сначала время. Спасибо за ваше время!
добавлено автор Jon K., источник

Попытка это::

SELECT 
REPLACE(telephone,' ', '') as replacedColumn
FROM sales_ledger 


WHERE REPLACE(telephone,' ', '') LIKE '%"+ SearchEdit.Text +"%'"

ИЛИ

Select temp1.* 
from
(
SELECT 
REPLACE(telephone,' ', '') as replacedColumn
FROM sales_ledger 
) as temp1

WHERE temp1.replacedColumn LIKE '%"+SearchEdit.Text+"%'"
3
добавлено
Отредактировали, пожалуйста, попробуйте теперь..:-),
добавлено автор Sashi Kant, источник
Первый вопрос или второй?
добавлено автор Sashi Kant, источник
Второй.
добавлено автор Jon K., источник
Теперь добираясь ' Стол не существует. Общая ошибка SQL. Стол, не найденный ' Еще раз спасибо.
добавлено автор Jon K., источник
Первое заявление возвращает другой ' Колонка не found' ошибка и второе получают меня ' Недействительный стол specification' ошибка. I' ve добавил информацию к оригинальной почте и извинениям за то, что не был упомянут он сначала время. Спасибо за ваше время!
добавлено автор Jon K., источник
DBA - русскоговорящее сообщество
DBA - русскоговорящее сообщество
1 345 участник(ов)

Общаемся и обсуждаем темы, посвященные DBA, PostgreSQL, Redis, MongoDB, MySQL, neo4j, riak и т.д. См. также: @devops_ru, @kubernetes_ru, @docker_ru, @nodejs_ru Рекомендуем сразу отключить уведомления, чтобы пребывание здесь было полезным и комфортным.

MySQL
MySQL
995 участник(ов)

The group is about MySQL. For code use hastebin.com. Admin: @smlkw