SQLite IF Exists пункт - PullRequest
       2

SQLite IF Exists пункт

8 голосов
/ 13 октября 2011

Как написать IF EXISTS, как показано в запросе ниже в SQLite?Я где-то читал, что предложение IF не существует в SQLite.Что может быть лучшей альтернативой для этого?

if exists (select username from tbl_stats_assigned where username = 'abc' )
    select 1 as uname
else
    select 0 as uname

1 Ответ

16 голосов
/ 13 октября 2011

Просто сделайте это стандартным способом SQL:

select exists(
    select 1
    from tbl_stats_assigned
    where username = 'abc'
);

Предполагая, конечно, что ваши 1 и 0 на самом деле являются логическими значениями (которые SQLite представляет с одним и нулем, как MySQL).

Это должно работать в любой базе данных SQL, а некоторые даже имеют специальные оптимизации для поддержки этой идиомы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...