のフィールドで使用可能なキーワードと一致しない、または含まれていないDescription
フィールドのレコードのみを取得するクエリがあります。したがって、一致するものは GridView に表示されるべきではなく、一致しないものだけが表示されます。SQL クエリの結果を GridView に表示しようとしていますが、一致するものを取得していますが、これは私の要件ではありません。Table 1
Keywords
Table 2
SQL Server で SQL Query を実行してみましたが、問題なく動作します。私の Web アプリでも問題なく動作しますが、Like
Statement の後にキーワードを明示的に指定した場合のみです。しかし、むしろ、すべてにまたがってほしいのKeywords
ですTable2
。これが私のコードです。
conn.Open()
For Each row As GridViewRow In Me.GridView1.Rows
For i As Integer = 0 To GridView2.Rows.Count - 1
Dim Records1 As String = GridView2.Rows(i).Cells(0).Text
Dim cmd = New SqlCommand("Select DISTINCT Description From DB.dbo.Table1 " +
"WHERE NOT EXISTS (Select * From [DB].dbo.Table2 WHERE " +
"Table1.Description LIKE '%' +TABLE2.Keywords + '%')", conn)
DA.SelectCommand = cmd
DA.Fill(dt)
GridView3.DataSource = dt
GridView3.DataBind()
cmd.ExecuteNonQuery()
cmd.Dispose()
DA.Dispose()
dt.Clear()
dt.Dispose()
Next
Next
GridView1
Table1 のデータを持っている ( The Description
)
GridView2
Table2 のデータを持っている ( The Keywords
)
GridView3
クエリの結果を持っている
ただし、前に述べたように、一致するものをまだ取得しています。クエリの形式に何か問題がありますか、何かが欠落しているか、間違った形式で書かれていますか? 提案や考えは本当にありがたいです。