Как обойти ошибку django: необработанный запрос должен включать первичный ключ
Есть ли способ выполнить запрос на Django без использования первичного ключа таблицы?
В следующем коде у меня есть запрос, который, по крайней мере, я думаю, должен использоваться только с
SELECT DISTINCT p.type
без добавления первичного ключа таблицы - в данном случае PK является NAME.
Каждый раз, когда я запускаю код, я получаю одну и ту же ошибку -
raw запрос должен включать первичный ключ
есть ли способ обойти это?
Код:
def Query_result(request):
AttackThreshold_res = request.POST.get('AttackThreshold')
PokemonCount_res = request.POST.get('PokemonCount')
sql_threshold_res = Pokemons.objects.raw("""
SELECT DISTINCT p.type
FROM pokemons p
INTERSECT
SELECT DISTINCT p1.type
FROM pokemons p1
WHERE p1.attack > %s
INTERSECT
SELECT DISTINCT p2.type
FROM pokemons p2
GROUP BY ( p2.type )
HAVING Count(p2.type) > %s
""", [AttackThreshold_res, PokemonCount_res])
return render(request, 'queries.html', {'sql_threshold': sql_threshold_res})