Kom ihåg mig?
Home Menu

Menu


hjälp med sql-fråga, vet knappt var jag ska börja...

 
Ämnesverktyg Visningsalternativ
Oläst 2012-01-07, 14:55 #1
znap znap är inte uppkopplad
Medlem
 
Reg.datum: Jun 2007
Inlägg: 114
znap znap är inte uppkopplad
Medlem
 
Reg.datum: Jun 2007
Inlägg: 114
Standard hjälp med sql-fråga, vet knappt var jag ska börja...

Hej!

Jag har fått så bra hjälp med sql-frågor här tidigare så jag tänkte jag skulle pröva min lycka igen.

Tabellen ser ut på följande sätt:

Kod:
entity | name | type
-------------------------------
300 | Gerard Butler | actor1
300 | David Wenham | actor2
300 | http://.... | image
Apollo 13 | Tom Hanks | actor1
Apollo 13 | Kevin Bacon | actor2
Apollo 13 | http://.... | image
Först hade jag följande sql-query
Kod:
SELECT entity, name FROM prefix_entity WHERE type ='actor1' ORDER BY RAND() LIMIT 0,5
Den gav mig 5 slumpade huvudroller från tabellen. Men hur ska frågan formuleras om jag även vill få ut den raden där kolumnen type har värdet image och kolumnen entity har samma värde som det slumpade? Jag vill alltså få ut 5 slumpade huvudroller och bilden på filmen, går det att få till med en fråga?

Mvh Vic
znap är inte uppkopplad   Svara med citatSvara med citat
Oläst 2012-01-07, 17:20 #2
znap znap är inte uppkopplad
Medlem
 
Reg.datum: Jun 2007
Inlägg: 114
znap znap är inte uppkopplad
Medlem
 
Reg.datum: Jun 2007
Inlägg: 114
Tror jag har löst det med:
Kod:
SELECT prefix_entity.* FROM (
	SELECT DISTINCT(entity) FROM prefix_entity 
	ORDER BY RAND() LIMIT 0,5
	) q
JOIN prefix_entity
ON prefix_entity.entity = q.entity 
ORDER BY q.entity;
Men det verkar gå gräsligt segt pga ORDER BY RAND(). För att snabba upp det kör jag på en slumpad LIMIT istället, typ:
Kod:
<?php
$num_rows = $db->getNumRows('min_tabell');
$rowset = $db->query('SELECT prefix_entity.* FROM (
	SELECT DISTINCT(entity) FROM prefix_entity 
	LIMIT '.(mt_rand(0, $num_rows-5).',5
	) q
JOIN prefix_entity
ON prefix_entity.entity = q.entity 
ORDER BY q.entity;');
Om någon har ett bättre förslag (förutom att ändra själva tabellstrukturen) tas det tacksamt emot.
znap är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 20:21.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017