-3

私はPHPとMySQLにまったく慣れていません。私は問題に行き詰まっています。私の問題を説明しようとします。

 TODAY = 2013-01-13 18:37:00
 PRODUCT = P000001

表:組み立て

  -----------------------------------------------------------------
  ∣ PRODUCT ∣ COMPONENT ∣      BEINFORCE      ∣     WILLEXPIRE      ∣
  -----------------------------------------------------------------
  ∣ P000001 ∣ C000001   ∣ 2013-01-01 18:37:00 ∣ 0000-00-00 00:00:00 ∣
  -----------------------------------------------------------------
  ∣ P000001 ∣ C000002   ∣ 2013-02-01 18:37:00 ∣ 0000-00-00 00:00:00 ∣
  -----------------------------------------------------------------
  ∣ P000001 ∣ C000003   ∣ 2013-01-01 18:37:00 ∣ 2013-01-10 18:37:00 ∣
  -----------------------------------------------------------------

出力は次のようにする必要があります。

  -----------------------------------------------------------------
  ∣ PRODUCT ∣ COMPONENT ∣      BEINFORCE      ∣     WILLEXPIRE      ∣
  -----------------------------------------------------------------
  ∣ P000001 ∣ C000001   ∣ 2013-01-01 18:37:00 ∣ 0000-00-00 00:00:00 ∣
  -----------------------------------------------------------------

テーブル ASSEMBLY からのクエリは、PRODUCT、BEINFORCE、および WILLEXPIRE をチェックし、テーブルを出力する必要があります。

4

1 に答える 1

0

あなたの質問の下のコメントを含めて、私があなたを正しく理解しているなら、あなたはそれらの行が欲しいASSEMBLYです

  1. BEINFORCE以下を持っているTODAY
  2. ゼロであるaを持っている、WILLEXPIREこれは私が将来の日付を示すために取る
  3. PRODUCTあなたが要求したものと一致する

これは、ユーザー変数がパラメーターを表すと仮定して、次のクエリを使用して実現できます。もちろん、準備されたクエリプレースホルダーを使用することもできます。

SELECT *
FROM ASSEMBLY
WHERE BEINFORCE <= @TODAY
  AND WILLEXPIRE = '0000-00-00 00:00:00'
  AND PRODUCT = @PRODUCT
于 2013-01-13T18:46:29.580 に答える