0

データベース テーブルがあり、時刻が 17:15:59 を超えていて、日が金曜日ではないいくつかのフィールドを更新したい

sqlfiddle でスキーマを作成しました

http://sqlfiddle.com/#!9/b8e99/1

そして、これはクエリです:

UPDATE saring SET pulang = '12:00:59'
WHERE TIME_FORMAT(STR_TO_DATE(pulang, '%r'), '%T') > '17:15:59' AND DAYNAME(STR_TO_DATE(tanggal, '%a')) != 'Friday'

しかし、私は間違いなく何か間違ったことをしています。助けが必要です。

お手伝いありがとう。

4

1 に答える 1

0

まず、列のタイプを次のように変更します。

tanggal: date
pulang: time

そして、日付形式を「2015-08-10」のようなものに変更します。
これにより、次のように Timeformat 関数を使用せずにクエリを実行できます。

UPDATE saring SET pulang = '12:00:59'
WHERE pulang > '17:15:59' 
AND DAYNAME(tanggal) != 'Friday'

作成したページはクエリを更新していないようです。ローカルホスト サーバーでこれを試してください。ここに SELECT ステートメントを含む sqlfiddle があります:
SQLFiddle

于 2015-08-10T18:27:15.180 に答える