hrach

Рейтинг
122
Регистрация
21.08.2004
Должность
programer
Интересы
Internet
programer
Мне нужно найти в строке первое слово до запятой в этой же строке

как-то так


select SUBSTRING(field1,0,LOCATE(',',field1) ) as f from table1 where field1 like '%,%'

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

Dram:
ivan-lev, большое спасибо! Так же важно тут что АНД нужно было поднять к Лефту.


P.S.
Господа, как вы понимаете когда нужно использовать ЛЕФТ или Иннер, где про это понятно почитать?

простым языком

inner - подразумевает, что условие должно выполняться всегда, т.е. каждой записи из таблицы 1 соответствует запись из таблицы 2

left/right - означает, что соответствующей записи из таблицы 1 в таблице 2 может и не быть (в этом случае поле таблицы 2 содержит значение NULL).

https://www.sql.ru/docs/sql/u_sql/

ANSI SQL

https://www.google.com/search?newwindow=1&rlz=1C1AOHY_ruRU712RU712&sxsrf=ACYBGNTHkS28SA2DK6DrbpZYo4aDE3MOmg%3A1572288527289&ei=Dzi3Xf-iEYasrgTInpqoBA&q=ansi+sql+%D1%83%D1%87%D0%B5%D0%B1%D0%BD%D0%B8%D0%BA&oq=ansi+sql+&gs_l=psy-ab.3.5.0i67j0l3j0i20i263j0l3j0i67j0.99335.107383..110318...0.1..0.135.329.3j1......0....1..gws-wiz.......0i71j35i39j0i7i30j0i203.qwf0PmbuxBA

Dram:
Попробовал так. результат не изменился...

вам нужен left/right

left join

как указали выше

вы "отсекаете" вот этим:

AND t4.object_group = 'com_pipls'

нужно это перенести в условие join-а

ну либо совсем изврат:


where
.....

AND (t4.object_group = 'com_pipls' or t4.object_group is null)
.....

вместо inner нужен left

left join

Заказал "блоги" - получил отчет.

Все сделано вовремя, все устраивает.

Спасибо!

hrach:
я имел ввиду скрипт создания таблицы.

create table....

где у вас "узкое" место? в пхп скрипте или в запросе update?

Dram:
А вот он /ru/forum/986171

я имел ввиду скрипт создания таблицы.

Оптимизайка:
Dram, только с тех полей, которые изменяются апдейтом

в исходном запросе обновляется поле, которое стоит в условии where.

Индексы хороши только для select, остальные операции они замедляют.

если "покрытие" индексов соответствует условию выборки, то индексы как раз таки ускоряют вне зависимости от типа запроса (select, update,delete).

ТС скиньте скрипт создания таблицы, epxlain запроса и кол-во строк в таблице.

Всего: 121