Consutla personalizada que mostrará artículos similiares
Select d.titulo, d.adicional, d.url, a.precioa, a.preciob, a.idtasa, a.precioc ,a.imagen1, a.url As ul, f.url_lazarus, a.idstock, a.comprable, a.idarticulo, Match(d.titulo, d.adicional) Against ((Select titulo From articulos_descripciones Where idarticulo={articulo} And ididioma=0)) As Score From articulos a Inner Join articulos_descripciones d ON (a.idarticulo=d.idarticulo) Inner Join familias_descripciones f ON (a.idfamilia=f.idfamilia) Where a.publicar='True' And d.ididioma=0 And f.ididioma=0 And Match(d.titulo, d.adicional) Against ((Select titulo From articulos_descripciones Where idarticulo={articulo} And ididioma=0)) And a.idarticulo<>{articulo} And a.comprable='True' And a.idsubfamilia={subfamilia} And a.publicar='True' And a.idstock=1 Group By a.idarticulo Order By Score DESC Limit 3;
Conulta personalizada que mostrará los artículos más comprados
Select d.titulo, d.adicional, d.url, a.precioa, a.preciob, a.precioc, a.precioanterior,a.idstock,a.imagen1, a.url As ul, f.url_lazarus, Count(p.idarticulo) As ContArt, a.idstock, a.comprable, a.idarticulo From (((articulos a Inner Join articulos_descripciones d ON a.idarticulo=d.idarticulo) Inner Join familias_descripciones f ON a.idfamilia=f.idfamilia) Inner Join pedidos_detalle p ON a.idarticulo=p.idarticulo) Where a.publicar='True' And d.ididioma={idioma} And f.ididioma={idioma} And a.idfamilia={familia} And a.idstock<>3 Group By a.idarticulo, p.idarticulo Order By ContArt DESC Limit 8;
Consulta personalizada que muestra productos de la misma familia que los que se encuentan en el carro
Select d.titulo, d.adicional, d.url, a.precioa, a.preciob, a.precioc ,a.imagen1, a.url As ul, f.url_lazarus, a.idstock, a.comprable, a.idarticulo From articulos a Inner Join articulos_descripciones d ON (a.idarticulo=d.idarticulo) Inner Join familias_descripciones f ON (a.idfamilia=f.idfamilia) Where a.publicar='True' And d.ididioma={idioma} And f.ididioma={idioma} And a.idfamilia=(Select ar.idfamilia From articulos ar Inner Join pedidos_temporal t ON ar.idarticulo=t.idarticulo Where t.idsesion='{sesionid}' And a.comprable='True' Order By Rand() Limit 1) Group By a.idarticulo Order By Rand() Limit 4;
Consulta personalizada que muestra artículos nuevos filtrados por escaparate:
Select d.titulo, d.adicional, d.url, a.precioa, a.preciob, a.precioc ,a.imagen1, a.url As ul, a.precioanterior, a.idstock, a.comprable, a.idarticulo, f.url_lazarus From (((articulos a Inner Join articulos_descripciones d ON a.idarticulo=d.idarticulo) Inner Join familias_descripciones f ON a.idfamilia=f.idfamilia) Right Join familias fa ON f.idfamilia=fa.idfamilia And fa.idescaparate={escaparate}) Where a.publicar='True' And d.ididioma={idioma} And a.comprable='True' And f.ididioma={idioma} And a.idstock=1 Group By a.idarticulo Order By a.idarticulo DESC Limit 4;
Consulta personalizada que muestra artículos aleatorios filtrados por escaparate:
Select d.titulo, d.adicional, d.url, a.precioa, a.preciob, a.precioc ,a.imagen1, a.url As ul, a.precioanterior, a.idstock, a.comprable, a.idarticulo, f.url_lazarus From (((articulos a Inner Join articulos_descripciones d ON a.idarticulo=d.idarticulo) Inner Join familias_descripciones f ON a.idfamilia=f.idfamilia) Right Join familias fa ON f.idfamilia=fa.idfamilia And fa.idescaparate={escaparate}) Where a.publicar='True' And d.ididioma={idioma} And a.comprable='True' And f.ididioma={idioma} And a.idstock=1 Group By a.idarticulo Order By Rand() Limit 4;
Se tendrá que tener en cuenta la expresión limit, ya que el número que le precede mostrará el número de productos a mostrar. También se tendrá que tener en cuenta el número de repeticiones de la zona, que prevalecerá sobre éste mientras sea más pequeño que el valor del limit