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

部分文字列条件でテーブルを結合する

    試してみてください

    UPDATE t1 LEFT JOIN t2
        ON t1.`group` = LEFT(t2.number, 3)
       AND t1.number = 0 + RIGHT(t2.number, 5)
       SET t1.used = 'NO'
     WHERE t2.id IS NULL
    

    およびSELECT

    SELECT *
      FROM t1 LEFT JOIN t2
        ON t1.`group` = LEFT(t2.number, 3)
       AND t1.number = 0 + RIGHT(t2.number, 5)
     WHERE t2.id IS NULL
    

    出力:

    | ID | GROUP | NUMBER | USED |
    ------------------------------
    |  3 |   110 |      3 |   NO |
    |  4 |   210 |      1 |   NO |
    |  6 |   210 |      3 |   NO |
    

    SQLFiddle




    1. 否定および/または複数の基準を持つmysqlの1対多クエリ

    2. MySQLでINTデータ型の長さを大きく設定してもエラーが発生しないのはなぜですか?

    3. MySQL / Amazon RDSエラー:SUPER権限がありません...

    4. MySQL:N行を選択しますが、1つの列に一意の値のみが含まれます