2016-04-02 12 views
1

別のテーブルの別の特定の値に基づいてIDをSQLテーブルに挿入する必要があります。別のテーブル内の別の特定の値に基づいてsqlテーブルにIDを挿入します。

例えば

は、私は1つのテーブルには INVOICE_NUMBER列と別のテーブルでのご予約は、列invoice_hotelsをinvoice_id言うと言ってきました。

私は予約テーブルの INVOICE_NUMBER列のデータに基づいてinvoice_idでinvoice_hotelsを挿入しようとしています。私は機能の下に達成したい

また、予約テーブルの INVOICE_NUMBER列の最後の値が9000 ある場合にのみ、私はのinvoice_id欄に9001を挿入したい

  • をPHPではないMySQLのsqueryを使用invoice_hotels

私は、これはPHPのスクリプトを簡単に行うことができます知っているが、私はそれをやろうとしていますSQLの場合のみ。

私はthisthisを参照しましたが、使用方法は分かりませんでした。

+0

1番目のテーブルの最後の挿入IDを取得し、+1を追加して2番目のテーブルに挿入します –

+0

SQLのみでどのように行うことができますか?私はPHPの選択クエリを使用せずに意味します。 –

+0

次に、 –

答えて

2

あなたはこのクエリを試すことができます:あなたはINSERTクエリの助けを借りて、別のテーブルにこの値を挿入することができ、その後

ここではINVOICE_NUMBERのための最大のIDをgetingされ、その後、選択クエリの助けを借りて、1増分はなります。あなたが応じて調整することができますので、私はテーブル名と列名についてはよく分からない:idがnullの場合、それは= 1

NOTEデフォルトのIDでかかります意味

INSERT INTO table_name (field1, field2,...fieldN)      
VALUES((SELECT IFNULL(MAX(invoice_number)+1, 1) from bookings), value2,...valueN); 

IFNULL(1 MAX)あなたの要件。

関連する問題