0

アプリケーションのバージョンが一致している場合は、キャッシュ サーバーからキャッシュ情報を保存しています。それ以外の場合は、キャッシュの詳細を NULL に設定する必要があります。

現在、私はこのようにやっています

UPDATE 
  cache_table 
SET
  _data = NULL 
WHERE _id = id AND _app_version != "current_version" 

選択クエリが続きます

SELECT 
      _data 
    FROM
      cache_table 
    WHERE _id = id AND _app_version == "current_version" 

2 つのクエリを起動せずに、1 つのクエリで必要な更新と選択を行う方法はありますか?

注: MySQL プロシージャを使用したくありません。特に理由はありませんが、データベース アプリケーションを簡単に変更できるように、アプリケーション ロジックを DB に保存したくありません。

4

2 に答える 2

1

通常UPDATE、 とSELECTは 2 つの異なる操作です。それらを組み合わせる唯一の方法は、特定したストアド プロシージャを使用することです。

于 2012-10-25T14:19:11.990 に答える
0

MySQLにはこれを行うための組み込みの方法があるとは信じていません。ただし、参考までに、これは OUTPUT 句を使用して SQL Server で実行できます。

http://msdn.microsoft.com/en-us/library/ms177564.aspx

于 2012-10-25T14:08:59.057 に答える