我需要在 mysql WHERE
语句中比较两个不同的列。在我创建的 View 中,我有一个名为 E_ID
的列和一个名为 event
的列。我需要从 E_ID
!= $E_ID
的 View 中 SELECT
当 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
,因为如果事件不同,它们可能相同。因此,当 event
为 status
时,我想返回所有不具有 1
的 E_ID
的内容。但是,它可以返回相同 E_ID 和相同事件的数据。
应该返回的是这个;
E_ID event
2 status
3 status
1 gig
3 track
5 gig
如您所见,除在变量中设置数据的行外,所有内容均已返回。
到目前为止,这是我的查询。
SELECT * FROM stream_view WHERE E_ID != '$E_ID'
不太确定从哪里开始,所以自己一直在努力弄清楚
最佳答案
我认为 OP 对此更感兴趣:
SELECT * FROM
stream_view
WHERE (event = '$event'
AND E_ID <> '$E_ID')
OR event<> '$event';
关于mysql - 比较 mySQL 中的多个列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17010555/