どのユーザーがすべてのテストに合格したかを調べる必要がある SQL クエリの問題があります。ここにテーブルがあります:
例: nameoftable(nameofcolumns)
ユーザー(ユーザーID、パスワード)
テスト (テスト番号、creditpertrue、negperfalse、合計、neededcredit)
{creditpertrue=正しい答えごとに与えられるポイントおよびnegperfalse =間違った答えごとに得られるポイントおよび合計=はテストの合計ポイントであり、needcreditはテストに合格するためのポイント}
質問(テスト#,q#,truechoice#)
user_test(ユーザーID,テスト#)
{この表は、どのユーザーがどのテストを受験したかを示しています (ユーザーは 1 回だけテストを受けることができます)}
user_test_question(uesrid,test#,q#,userchoice#) {この表は、すべてのテストと質問番号でのすべてのユーザーの選択を示しています。間違っているか正しいか}
今問題はこれです:
find out the userid of users that have passed all of the tests.
私の頭に浮かんだ解決策はこれでした:
次のような 2 つのビューを作成します: view1:userid,test#,numberofrightchoices
と
view2:userid,test#,numberofwrongchoices
次に、これらの 2 つのビューで選択を使用し、numberofrightchoices*creditpertrue-numberofwrongchoices*negperfalse>=neededcredit を使用します
出来ますか?