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

フィールドがnullでない場合はMYSQLJOIN

    私があなたを正しく理解している場合(あなたは例のデータを提供していません)、このクエリはあなたが望むデータを提供します:

    SELECT a.*, u1.Name, u2.Name FROM `articles` a
    JOIN `users` u1 ON (a.id=1 AND u1.`id` = a.`authorid` )
    LEFT JOIN `users` u2 ON (a.`updaterid` IS NOT NULL AND u2.`id` = a.`updaterid`) 
    

    u2.Name NULLになります a.updateridの場合 IS NULL`(またはアップデータユーザーが削除される)、またはそれ以外の場合は名前を保持します。



    1. MySQLでのREGEXP_INSTR()関数のしくみ

    2. MYSQL UNION DISTINCT

    3. OracleSQLDeveloperとPostgreSQL

    4. IF条件のOracleSelectステートメント