SQLite Forum

documenting SQLite's "IS" behavior
Login
That's implicit casting at work.

```
sqlite> select 2 is true;
```

is like

```
psql=# select 2::boolean is not distinct from true;
```

In the second example, `true` must be cast to integer first, so:

```
sqlite> select 2 is +true;
```

is equivalent to PostgreSQL's SQL:

```
psql=#  select 2 is not distinct from +true::int;
```

And so on. So I stand by my claim above.