@dumahism

Как выбрать объект в котором поле является началом строки?

есть path = name1/qqqq/qq
в таблице есть:
name=name1/q
name=name2
нужно извлечь объект с name=name1/q, т.к "name1/q", является началом path.
Средствами ORM.
  • Вопрос задан
  • 75 просмотров
Решения вопроса 1
@dumahism Автор вопроса
так получилось
Model.objects.annotate(screen_name=V(path, output_field=CharField())).filter(screen_name__startswith=F('name'))
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
joeberetta
@joeberetta
1. Муж; 2. Fullstack разработчик; 3. Студент
Так просто разбейте path на подстроки. Можете сплит по символу "/" сделать и уже просто в sql параметром кидать нужную часть подстроки
Ответ написан
BojackHorseman
@BojackHorseman
...в творческом отпуске...
да очень просто

create table Test(name varchar(100));
insert into Test(name) values("name1"), ("name2");

select * from Test where 'name1/qqqq/qq' LIKE CONCAT(`name` , '%');
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
21 нояб. 2019, в 09:12
3001 руб./за проект
21 нояб. 2019, в 08:35
2000 руб./за проект
21 нояб. 2019, в 07:41
3000 руб./за проект