3

我需要比较 mysqlWHERE语句中的两个不同列。在我创建的视图中,我有一个名为的列E_ID和一个名为event. 我需要SELECTE_ID!= $E_IDwhen event=的视图$event

因此,如果$event= status 和$E_ID= 1,该语句将选择任何未获得相同事件且相同E_ID但它可以返回具有相同事件的数据E_ID事件和不同事件的数据。

好的,让我们举一些例子。可以说我有这个作为我的两个变量:

$E_ID = '1';
$event = 'status';

好的,现在表格是这样的;

E_ID    event

1       status
2       status
3       status
1       gig
3       track
5       gig

如您所知,第一行包含变量中的数据集,因此我们不想返回它。但问题在于,E_ID如果事件不同,它们可能是相同的。所以我想返回所有没有E_IDof 1when the eventis 的东西status。然而,它可以返回相同 E_ID 和相同事件的数据。

应该返回的是这个;

E_ID    event

2       status
3       status
1       gig
3       track
5       gig 

如您所见,所有内容都返回,但变量中包含数据集的行。

到目前为止,这是我的查询。

SELECT * FROM stream_view WHERE E_ID != '$E_ID'

不太确定从哪里开始,所以我自己很难弄清楚

4

3 回答 3

1

我认为OP对此更感兴趣:

SELECT * FROM 
stream_view 
WHERE (event = '$event' 
AND E_ID <> '$E_ID') 
OR  event<> '$event';
于 2013-06-09T14:27:39.063 回答
0

你的意思是这样吗?

SELECT * FROM stream_view WHERE E_ID != '$E_ID' AND event = '$event'
于 2013-06-09T14:22:40.153 回答
0

我认为您可以将这两个条件都放在您的WHERE条款中

SELECT * FROM stream_view WHERE E_ID != '$E_ID' and event = '$event'
于 2013-06-09T14:22:49.500 回答