EAV表,查找是否同时存在2条记录

时间:2014-10-28 16:40:46

标签: mysql entity-attribute-value

我有一个名为keywords的EAV表,关键字属于document链接的document_id

现在我想知道是否有一个包含2个关键字的文档keywordAkeywordB确定了值。

我做到了这一点,但由于我是SQL(MySQL)的新手,我想知道是否有更好的方法:

select * from 
(select * from keywords k where k.keyword = "Nº de Operacion" and k.value = "000539090279") a, 
(select * from keywords k where k.keyword = "Fecha" and k.value = "20140611") b;

然后我检查行是否> 0或1。

1 个答案:

答案 0 :(得分:0)

您可以在同一查询中计算记录:

SELECT Count(*) KeywordCount
FROM   keywords k
WHERE  ( k.keyword = 'Nº de Operacion'
         AND k.value = '000539090279' )
        OR ( k.keyword = 'Fecha'
             AND k.value = '20140611' );