En utilisant cette déclaration:expression de type non booléen
select * from qvalues where rowid ,name,compound in (
select rowid,name,compound from qvalues where rowid in (select rowid from batchinfo where instrument='tf1')
group by rowid,name,compound
having COUNT(*)>1
)
group by rowid,name,compound
having rid=min(rid)
Cette erreur se produit:
Msg 4145, niveau 15, état 1, ligne 3 Une expression de type non booléen spécifié dans un contexte où une condition est attendue, proche de ','. Msg 156, niveau 15, état 1, ligne 8 Syntaxe incorrecte à proximité du mot clé 'groupe'.
Quel est le problème avec cette instruction SQL? J'ai besoin de trouver toutes les occurrences de ces trois champs dans la table having min(rid)
.
Mise à jour En utilisant cette requête, la sélection externe ne fonctionne pas. Qu'est-ce que je fais mal?
select * from qvalues where rid not in (
select q.rowid, q.name, q.compound, min(q.rid)
from qvalues q
inner join batchinfo b
on q.rowid = b.rowid
and b.instrument = 'tf1'
group by q.rowid, q.name, q.compound
having count(*) > 1)
SQL Server dites-vous? Et où est la ligne 8? – gbn
@gbn oui en effet –