Excluir artículos asignados de la consulta -- mysql camp Relacionados El problema

Exclude assigned articles from query


0
vote

problema

Español

Tengo una consulta que imprime todos los artículos asignados a la categoría del artículo actual

  SELECT * FROM #__content WHERE catid='$catid'   

y en esta tabla (abajo) hay artículos asignados al artículo actual como artículos similares

  assigned_id   fav_id      1          45      1          12      1          53  SELECT fav_id FROM #__similar WHERE id='$id'   

Quiero que estén ocultos en la primera consulta, que está enviando todos los artículos, incluido uno que se asigna como similares. Así que en este ejemplo artículos con ID 45,12,53 serían excluidos

Original en ingles

I have one query which prints all articles assigned to current article's category

SELECT * FROM #__content WHERE catid='$catid' 

And in this table(below) there are articles which are assigned to current article as similar articles

assigned_id   fav_id      1          45      1          12      1          53  SELECT fav_id FROM #__similar WHERE id='$id' 

I want them to be hidden in first query, which is outputing all articles including one which are assigned as similar. So in this example articles with id 45,12,53 would be excluded

  
   
   

Lista de respuestas

1
 
vote
vote
La mejor respuesta
 

consulta completa:

  SELECT distinct c1.*  FROM #__content c1 LEFT OUTER JOIN #__similar S on S.fav_id = c1.id LEFT OUTER JOIN c2 on c2.catid='$catid' and c2.id = S.assigned_id WHERE c1.catid='$catid' and c2.id is null   

Como puede ver, se une a la consulta __content con __similar thourh fav_id, eso significa, la consulta está buscando si este contenido es similar al otro contenido. En fin, Únase de que el artículo similar está en la misma categoría.

 

Full query:

SELECT distinct c1.*  FROM #__content c1 LEFT OUTER JOIN #__similar S on S.fav_id = c1.id LEFT OUTER JOIN c2 on c2.catid='$catid' and c2.id = S.assigned_id WHERE c1.catid='$catid' and c2.id is null 

As you can see, query joins __content with __similar thourh fav_id, that means, query is looking if this content is similar to som other content. In last join I chech that the similar item is in the same category.

 
 
2
 
vote

Pruebe esto

      SELECT * FROM #__content c      INNER JOIN #__similar s     ON c.article_id != s.fav_id     WHERE catid='$catid'   
 

try this

    SELECT * FROM #__content c      INNER JOIN #__similar s     ON c.article_id != s.fav_id     WHERE catid='$catid' 
 
 

Relacionados problema

317  ¿Qué tan grande puede obtener una base de datos MySQL antes de que se inicie el rendimiento para degradarse?  ( How big can a mysql database get before performance starts to degrade ) 
¿En qué punto comienza a perder una base de datos MySQL? significa el tamaño de la base de datos física? ¿Cuántos registros importan? ¿Alguna degradaci...

136  Mecanismos para el seguimiento de cambios de esquema DB [CERRADO]  ( Mechanisms for tracking db schema changes ) 
Según lo que actualmente representa, esta pregunta no es un buen ajuste para nuestro Q & Amp; un formato. Esperamos que las...

2  Uniéndose 2 columnas de Table1 a la Tabla 2  ( Joining 2 columns from table1 to table 2 ) 
¿Cómo se hace referencia a la tabla1 columnas a 2 columnas en la Tabla 2 He creado una tabla ' estado ' con 50 filas exactas Tratando de relacionar (Estad...

177  Tirar un error en un gatillo MySQL  ( Throw an error in a mysql trigger ) 
Si tengo un M_PI3 M_PI4 en una tabla, ¿cómo puedo lanzar un error que evita la actualización en esa tabla? ...

87  SQL Server 2005 Implementación de MySQL Reemplazar en?  ( Sql server 2005 implementation of mysql replace into ) 
MySQL tiene este comando increíblemente útil y propietario 99887776611 SQL. ¿Se puede emular fácilmente en SQL Server 2005? Inicio de una nueva transacc...

191  Datos binarios en MySQL [CERRADO]  ( Binary data in mysql ) 
cerrado . Esta pregunta debe ser más enfocado . Actualmente no está aceptando respuestas. ...

1  MySQL: Consultas de migración de V4 a V5  ( Mysql migrating queries from v4 to v5 ) 
Al migrar un proyecto de MySQL 4 a MySQL 5, ¿cuáles son las cosas principales que necesito para abordar para garantizar que las consultas siguen siendo compat...

0  Las pruebas unitarias de rieles fallan debido a una restricción única en Schema_Migrations  ( Rails unit tests fail because of unique constraint on schema migrations ) 
Estoy tratando de ejecutar rake test:units y sigo recibiendo esto: Mysql::Error: Duplicate entry '2147483647' for key 1: INSERT INTO `ts_schema_migration...

88  Cómo exportar datos de SQL Server 2005 a MySQL [CERRADO]  ( How to export data from sql server 2005 to mysql ) 
cerrado. Esta pregunta es off-topic . Actualmente no está aceptando respuestas. ¿Quieres ...

39  Python y MySQL  ( Python and mysql ) 
Puedo conseguir que Python funcione con PostgreSQL, pero no puedo hacer que funcione con MySQL. El problema principal es que, en la cuenta de alojamiento comp...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos