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

MySQLのCASEは、列のデータ型をINTではなくBIGINTに強制します

    次のトリックが役立ちます:

    DELIMITER //
    
    CREATE FUNCTION `return_integer`(`number` INT UNSIGNED)
    RETURNS INT UNSIGNED DETERMINISTIC
    BEGIN
        RETURN `number`;
    END//
    
    DELIMITER ;
    
    SELECT
        CASE `L`.`Code`
           WHEN 'ABCD' THEN `return_integer`(0)
           ELSE `L`.`ID`
        END AS XLID
    FROM `table_name` `L`;
    



    1. MySQL-WhereINクエリで一致する結果と一致しない結果

    2. Oracle UpdateXML()はXML構造を変更しますか?

    3. エラー:読み取り専用ユーザーとしてSELECTを試行しているときに、Postgresのリレーションテーブル名のアクセス許可が拒否されました

    4. PostgreSQL関数をGORMのデフォルト値として設定するにはどうすればよいですか?