В моем столбце может быть строка типа: «данные +» или «данные + данные + данные + .. (неопределенное время) .. +» Мне просто нужно получить столбец, в котором у меня есть кратные данные, а не только один.
Я пробовал с
mycol NOT LIKE '%+'
Но не вышло ...
На самом деле я не знаю данных, это строка, которая меняется: 'blabla' или 'aString' или 'что угодно'
Если бы в моих столбцах
'jdsjpgsg+jdsjpgsg+', 'dvgff+', 'ffef+eefds+ghghgh+'
Я хочу выбрать только
'jdsjpgsg+jdsjpgsg+',
'ffef+eefds+ghghgh+',
НЕ 'dvgff+'!






% - это подстановочный знак. Вы должны использовать % после data. Попробуйте как:
SELECT * FROM `table` WHERE `mycol` NOT LIKE 'data+%'
Вышеупомянутый запрос отфильтрует все записи, в которых есть какие-либо символы после data+.
если вы хотите искать "..xxx + ..", вам следует использовать xxx+%
если вы хотите искать ".. + xxx ..", вам следует использовать %+xxx
если вы хотите искать ".. ++ ..", вам следует использовать %++%
если вы хотите искать ".. + .. + ..", вам следует использовать %+%+%
It is what I get too and I dont want that. It is actually what i don't want to select. If I had jdsjpgsg+jdsjpgsg+ in my table I want to select it and NOT jdsjpgsg+ It is tricky...
так что вы можете попробовать like '%+%+%' исключить только один "+"
CREATE TABLE TestTable
(`text` varchar(90))
;
INSERT INTO TestTable
(`text`)
VALUES
('jdsjpgsg+jdsjpgsg+'),
('dvgff+'),
('ffef+eefds+ghghgh+')
;
select * from TestTable
where text like '%+%+%'
| text |
|--------------------|
| jdsjpgsg+jdsjpgsg+ |
| ffef+eefds+ghghgh+ |
Ссылка на демонстрацию SQL Fiddle
Это то, что я тоже получаю, и я этого не хочу. На самом деле это то, что я не хочу выбирать. Если бы в моей таблице было jdsjpgsg + jdsjpgsg +, я бы хотел выбрать его, а НЕ jdsjpgsg + Это сложно ....
Попробуйте
mycol NOT LIKE 'data+%'