, когда я печатать SQL сгенерированного в connection.queries:SQL, генерируется в Джанго
я нашел некоторый SQL как это:
SELECT (1) AS `a` FROM `auth_user` WHERE `auth_user`.`id` = 2
Что это значит?
, когда я печатать SQL сгенерированного в connection.queries:SQL, генерируется в Джанго
я нашел некоторый SQL как это:
SELECT (1) AS `a` FROM `auth_user` WHERE `auth_user`.`id` = 2
Что это значит?
Выбирает значение '1' под псевдонимом (имя столбца) 'a' для каждой записи таблицы (или вида) 'auth_user', если выполнено условие auth_user.id = 2.
Другими словами: он возвращает одно поле («а») со значением «1» для всех пользователей с идентификатором = 2
Он используется, чтобы проверить, что строка существует, фактически не извлечение каких-либо данных (построенный по django.db.models.sql.query.BaseQuery.has_results
, называемый, например, QuerySet.exists
).