Member 12858897 Ответов: 1

Содержит или, как, кажется, не работает для MySQL лайт


Может ли кто-нибудь помочь в разрешении одной из следующих прокомментированных строк, пожалуйста?
Я попытался с как а также содержит.
Не получил никакого результата с подобным, но ценности есть.

Кроме того, CONTAINS, похоже, не работает в mySQL LIte.

<pre>CREATE TABLE PxpAsPerPolarBookings AS SELECT pxp.invoice , PolarCruiseBrandPax.bookingRef 
From pxp, PolarCruiseBrandPaxFile2 
where 
//pxp.invoice CONTAINS PolarCruiseBrandPaxFile2.bookingRef;
//OR
//pxp.invoice like '%'+ PolarCruiseBrandPaxFile2.bookingRef +'%';


Что я уже пробовал:

Я попытался использовать оператор like, но так как это не постоянное поле, как мы это сделаем, если не это:
pxp.invoice like '%'+ PolarCruiseBrandPaxFile2.bookingRef +'%';

#realJSOP

Какую ошибку вы получаете? - Похоже, что это не работает, но ничего нам не говорит.

Richard MacCutchan

Почему последние три строки закомментированы?

#realJSOP

Наверное, потому, что они "не работают".

1 Ответов

Рейтинг:
0

Wendelius

Одна из причин отказа от возврата каких-либо данных может заключаться в том, что столбец чувствителен к регистру. Вы можете попробовать следующее

SELECT pxp.invoice, 
       p2.bookingRef 
FROM pxp, 
     PolarCruiseBrandPaxFile2 p2
WHERE pxp.invoice COLLATE UTF8_GENERAL_CI LIKE '%' + p2.bookingRef + '%';


Maciej Los

5ed!

Wendelius

Спасибо!

#realJSOP

Но LIKE устраняет необходимость беспокоиться о чувствительности к регистру (или это происходит в SQL Server).

Wendelius

Зависит от выбранного параметра сортировки, также В SQL Server. Также обратите внимание, что он не является специфичным для оператора, то же самое относится и к равенству и т. д.