6

SQLについてはよくわかりません。SQLServerのデータベースに接続するRFID学生登録スキャナーを作成しているだけです。

これは非常に簡単なことだと思いますが、問題の解決策を見つけることができませんでした。

うまくいかない基本的な形でこのようなことをしたいのですが:

UPDATE Attendance 
SET    A1 = 'TRUE' 
WHERE  Student.ID = '3a0070c48' 
  AND  Module.Day = 'Friday' ;

ただし、完全なSQLUpdateは次のようにする必要があります。

UPDATE Attendance 
SET    A1 = 'TRUE' 
WHERE  Student.ID = '3a0070c48' 
  AND  Module.Day = 'Friday' 
  AND  '1100' BETWEEN Module.StartTime 
                  AND Module.EndTime ;
4

1 に答える 1

8

わかりました、あなたはこのようなことをする必要があります:

UPDATE A
SET A.A1 = 'TRUE' 
FROM Attendance A
INNER JOIN Student S
    ON A.StudentId = S.ID
INNER JOIN Module M
    ON A.ModuleId = M.ID
WHERE S.ID = '3a0070c48' 
AND M.[Day] = 'Friday' 
AND '1100' BETWEEN M.StartTime AND M.EndTime

私はあなたのテーブルに関連する列を推測しました、しかしそれはあなたが持っているものに非常に近いはずです、あなたは実際の列を使う必要があります。

于 2013-03-21T18:11:03.873 に答える