有一个搜索者表,雇主表,类别表,兴趣表......
兴趣表根据他们感兴趣的类别存储求职者和雇主的利益......并使用外键......
FK_is_id = Seeker ID
FK_ie_id = Employer ID
FK_ic_id = Category ID
所以数据存储如下:
int_id FK_is_ID FK_ie_ID FK_ic_ID
1 2 null 3
2 2 null 5
3 null 1 3
4 null 3 1
5 null 2 5
6 4 null 1
现在,该表显示搜索者2喜欢类别2和5
雇主1喜欢第3类,雇主2喜欢第5类,雇主3喜欢第1类......
它还表明,寻求者2和雇主1有相似的兴趣和寻求者2,雇主2也有相同的兴趣......
搜寻者4和雇主3有相同的兴趣..
所以我需要的是依赖搜索者ID,显示与寻求者有相同兴趣的雇主。
例如:如果给出S ID(来自搜索者表)2,则显示雇主1和雇主2与他有相同的兴趣!
我正在使用此代码列出webform上的雇主名称..所以我缺少的是SQL Logic ..任何帮助都是适当的!
String ssid;
ssid = Request.Cookies["UserSettings"]["sid"];
SqlConnection myConn2;
SqlCommand myCommand2;
SqlDataReader myReader2;
String SQL2, divjobs;
myConn2 = new SqlConnection(WebConfigurationManager.ConnectionStrings["ApplicationServices"].ToString());
divjobs = "<ul>";
myConn2.Open();
SQL2 = "";
myCommand2 = new SqlCommand(SQL2, myConn2);
myCommand2.Parameters.AddWithValue("@sid", ssid);
myReader2 = myCommand2.ExecuteReader();
while (myReader2.Read())
{
divjobs = divjobs + "<li>" + myReader2["e_name"] + "</a>" + "</li>";
}
divjobs = divjobs + "</ul>";
latestEmp.InnerHtml = divjobs;
myConn2.Close();
答案 0 :(得分:1)
我仍然不确定您的RDBMS是否符合上述评论,但此Sql Fiddle here将返回搜索者ID主题的员工ID数据(我已针对学生ID 2进行了过滤) 。您尚未向我们提供您的员工或学生表,因此您需要加入这些表格才能从您的读者中提取e_name
等字段。我刚刚拉下了FK_ie_ID
外键。
要将其拉入您的应用程序,您需要将@sid参数绑定到查询。另请注意,SqlCommands和Readers是IDisposable。
最后,如果您选择的RDBMS是MySql而不是Sql Server,则需要引用相应的MySql库并将SqlConnection
更改为MySqlConnection
和SqlCommand
更改为{{1} }。
MySqlCommand