我目前正在做一个像易货系统这样的系统。像这样的情况。客户(Jasmine)要求输入' NAME'属性(她必须寻求的)并输入' SEEK'属性(她需要寻求什么)。为了得到结果,' SEEK'属性必须与'姓名'匹配来自其他客户的属性和“SEEK'来自其他客户的属性必须与“有”'匹配。来自Jasmine的属性。
例如我有表项(已在数据库中)
|ITEMSID|NAME |SEEK |USERID|
|A01 |printer|laptop |A1 |
|A45 |laptop |headphone|A2 |
|AY3 |laptop |headphone|A3 |
例如,Jasmine有'姓名'属性耳机和'寻求'属性笔记本电脑和结果应该是这样的。结果应该列出所有可能性(它可能包含多于一行,如果不匹配,则可能得到零结果' NAME' AND' SEEK'属性
|ITEMSID|NAME |SEEK |USERID|
|AY3 |laptop |headphone|A3 |
|A45 |laptop |headphone|A2 |
感谢您帮助我。我正在使用jsp开发的系统 p / s:我是stackoverflow中的新用户。
根据评论编辑:
我已尝试使用inner join
,但查询结果并非特定于一项交易(意味着结果匹配'有'和' Seek'属性,但有所有匹配的行,而不是选择输入的“具有”属性:
SELECT a.NAME, a.seek,a.ITEMSID
FROM items a
JOIN items b ON a.NAME = b.seek AND b.NAME = a.seek
答案 0 :(得分:1)
根据您尝试的查询,如果我正确理解您的请求(我不确定),您所缺少的只是输入的WHERE
子句。
SELECT a.name, a.seek, a.ITEMSID
FROM items a
JOIN items b
ON a.name = b.seek
AND b.name = a.seek
WHERE a.name = 'input here'