0

私を許してください。私はまったくの初心者で、phpmyadmin のこのテーブルについて助けが必要です

私のテーブルには次の列があります。

Primary_ID, Begin_Date, End_Date, Timestamp

指定された日付範囲 (例: 1 か月に 30 日) 内でランダムに生成された begin_dates とタイムスタンプを持つ選択された行を phpmyadmin で更新するにはどうすればよいですか。望ましい結果の例

Primary_id--- Begin_Date -------------Timestamp

1.------------2008-09-02--------------2008-09-02 21:48:09

2.------------2008-09-03--------------2008-09-03 15:19:01

3.------------2008-09-14--------------2008-09-14 01:23:12

4.------------2008-09-27--------------2008-09-27 19:03:59

2008-09-01 から 2008-09-31 までの日付範囲。時間は24時間可変

私は初心者なので、phpmyadmin で動作する構文は非常に役立ちます。

500 人のメンバーがいるジム サイトのプレゼンテーションを作成していますが、追加されたメンバーの値はすべて同じ開始日時になっています。それらをデータベース内の異なる月ごとの登録に分けようとしています。たとえば、8 月に異なる日時に 50 人が登録され、10 月に 35 人が登録されました。ありがとう -

以下の回答のいずれかを試すと、次のエラーが表示されます: #1064 - SQL 構文にエラーがあります。1行目の「$randomDate = rand(1,31)」の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。したがって、理想的には、編集を最小限に抑えてphpmyadminにコピーして貼り付けることができるコードが高く評価されます. できれば順番に。理解して実行するための完全なダミー。

4

2 に答える 2

0

私はこのようなものから始めます。これらの束を組み合わせることができますが、私が何をしているのかがわかるように分割します。

乱数を取得するには、rand()を使用できます。日付、時、分、秒のいずれかを取得します

$randomDate = rand(1,31);
$randomHour = rand(1,24);
$randomMinute = rand(0,59);
$randomSecond = rand(0,59);

必要に応じてstr_padを使用して追加できるように、先行ゼロ(3ではなく03)が必要になります

$randomDate = str_pad($randomDate, 2, '0',STR_PAD_LEFT);
//The '2' is how many characters you want total
//The '0' is what will be added to the left if the value is short a character

他のすべてのランダム値についても同じようにします。きちんとしたクエリが好きだからといって、次に最終的な更新文字列を作成する必要があります。

$newDate = '2008-09-'.$randomDate;
$newTime = $randomHour.':'.$randomMinute.':'.$randomSecond;

更新する行をどのように決定するのかわからないので、それはあなたに任せます。たとえば、Primary_id 3でこれを実行したい場合は、クエリを表示します。

$x = mysql_query("UPDATE yourTable SET Begin_Date=\"$newDate\", Timestamp=\"$newTime\" WHERE Primary_id = 3");
于 2012-05-28T18:07:33.397 に答える