FacebookTwitterDiggDeliciousStumbleuponGoogle BookmarksRedditLinkedin

How to limit results from join

I found this as a very common question when people start in sql. You can use sub-queries but I wouldn't recommend that as its slower and not scalable. So.. I like the method I show you bellow:

Create a variable and save on it the row number(@num).
 
We also need another variable to save the "page" id as its necessary to restart the row count when a different page appears.
 
Finally we filter by @num with as much rows we want. Remember matchNO is a calculated field so you cant filter in a where statment, use having instead.

The code

set @num := 0, @parent := 0;
SELECT p.[yourFields],IF(@parent = p.id,@num:=@num+1,@num:=1) as matchNO, @parent:=p.id
	FROM parent p
		LEFT JOIN child c on c.p_id = p.id
			WHERE [yourFilters]
				having matchNO <= 3;

 

The row number is necessary to figure out in what row you are. The page variable tell you the page in the last row so you can compare and then set @num to 1 again when necesary.

sleep() in JavaScript

PHP has a sleep() function, but JavaScript doesn't. Well, this is because it's useless, you might say, and you'll be right. But for simulating heavy processing and for misc performance measurements, it could be useful. So here's how you can go about creating a sleep() in JavaScript.

The code

function sleep(milliseconds) {
  var start = new Date().getTime();
  for (var i = 0; i < 1e7; i++) {
    if ((new Date().getTime() - start) > milliseconds){
      break;
    }
  }
}

Usage

Sleep for 1 second (1000 milliseconds):

console.log(new Date());
console.log('Dude!');
sleep(1000);
console.log(new Date());

 

Read more about this in the original post from stoyanstefanov in phpied.com

EL CEO se ha quedado obsoleto

"EL CEO se ha quedado obsoleto". Así describía Carlos Puig Sagi-Vela en la conferencia llevada a cabo en la escuela politécnica de la Universidad de Alcalá de Henares como la evolución de las redes sociales puede suponer un cambio definitivo en la mentalidad de los CEOs, pues muchos de ellos han quedado ya obsoletos.

Carlos Puig nos explica todas las implicaciones a nivel de negocios, empresas y gerencia desde el punto de vista de la utilización de redes sociales del estilo de LinkedIn como inteligencia de negocios. LinkedIn es una herramienta muy útil que nos permite tener un acercamiento mediante contactos al entorno corporativo de las empresas que pueden estar buscando perfiles como el nuestro, pero no es la única. Debemos mejorar nuestra presencia en internet, abrir nuestras puertas y ampliar nuestra red de contactos para ser accesibles al mayor número de contactos posible.

"Las redes hay que construirlas cuando no se necesitan", es el momento clave para poder sacar el máximo provecho de ellas explotándolas. De este modo, cuando la sociedad comience a hacer uso de estas redes, y por lo tanto sean necesarias, podremos jugar con ventaja.

Read more ...

Freedom Code

All existing content on this site can be used and modified to pleasure the developer who implements it. 

There are full and complete freedom to use the code. Developers can collaborate on this projects or recommend changes for improve it.

Contact