我的代码(我使用带有 JET 数据库引擎的 MS Access 2000)
SELECT Members.First_Name + ' ' + Members.Last_Name AS Member,
iif(NULL,Friends.My_E_Mail, Friends.Friend_E_Mail) AS E_Mail,
Members.First_Name AS Name
FROM ((Members
LEFT OUTER JOIN Friends
ON Members.E_Mail = Friends.My_E_Mail
AND Friends.Friend_E_Mail = ?)
LEFT OUTER JOIN Friends Friends_1
ON Members.E_Mail = Friends.Friend_E_Mail
AND Friends.My_E_Mail = ?)
我的表成员(所有 VARCHAR)SOME DATA First_Name Alester Jude Carl Jones Last_Name ABCJ
FRIENDS(ALL VARCHAR)
My_E_Mail Alester@lam.com Alester@lam.com Alester@lam.com
Friend_E_Mail jude@lam.com carl@lam.com jones@lam.com
***注意好友表允许重复,因此 jude 可以在 my_E_Mail 上,但不能添加alester,因为他们已经是好友了。
所需输出 if ("?" 在上面的查询中是:jones@lam.com)
+--------------+-----------+------------+
|Member |E_Mail | Name |
+---------------------------------------+
Alester A Alester@lam.com Alester
上述查询中的所需输出 if("?" 为:Alester@lam.com)
+--------------+-----------+------------+
|Member |E_Mail | Name |
+---------------------------------------+
Jude B jude@lam.com Jude
carl C carl@lam.com Carl
Jones J jones@lam.com Jones
PS“?” 是我在“?”中传递的查询字符串参数 我知道这很好用。
我的问题是:我不断收到此错误“不支持加入表达式”
是否有一种解决方法查询我可以在不使用存储过程或使用多个查询的情况下使用,因为这需要是一个单一的查询!?