sql >> データベース >  >> RDS >> Oracle

データベースを設計するとき、複数の真/偽の値を格納するための好ましい方法は何ですか?

    SQL Server内 、BITがあります データ・タイプ。そこに0または1を格納し、値を比較することはできますが、MINを実行することはできません。 またはMAX

    Oracle内 、NUMBERを使用するだけです またはCHAR(1)

    MySQL内 およびPostgreSQL すべてのデータ型は暗黙的にBOOLEANに変換可能です 。

    どちらのシステムもBOOLEANをサポートしています WHEREで、演算子なしでそのまま使用できるデータ型 またはON 条項:

    SELECT  *
    FROM    mytable
    WHERE   col1
    

    、これはSQL Serverでは不可能です およびOracle (そこに何らかの種類または述語が必要です)

    MySQL内 、BOOLEAN TINYINT(1)の同義語です 。

    PostgreSQL内 (ストレージの観点からも)しかし、論理的には、他のタイプに暗黙的に変換することはできません。



    1. ORA-00936oracleselect文でdate関数を使用する場合

    2. jsonb_set()を使用して特定のjsonb配列値を更新する

    3. このmysqlイベントを実行できないのはなぜですか?

    4. 単一の制約が失敗したときにトランザクション全体を中止しないようにPostgreSQLに指示するにはどうすればよいですか?