Avatar billede Slettet bruger
30. juli 2008 - 13:20 Der er 6 kommentarer og
1 løsning

Retuner true hvis eksistere

Hej

Er det muligt at lave en sql query som blot retunere svaret "true" hvis den finder den pågældende linie og naturligvis "false" hvis ikke den gør.

Blot for at gøre det lidt nemmere kan der tages udgangspunkt i denne: SELECT * FROM options_farver_id where produkt = "&produkt_id&";
Avatar billede leif Seniormester
30. juli 2008 - 13:23 #1
$sql = "DIN SQL SÆTNING";
$result = mysql_query($sql);
$numrows = mysql_num_rows($result);

if($numrows == "0") {
$tjeck = FALSE;
} else {
$tjeck = TRUE;
}


Er sådan jeg går det.
Avatar billede w13 Novice
30. juli 2008 - 13:26 #2
if($numrows == "0") {
$tjeck = FALSE;
} else {
$tjeck = TRUE;
}

kan i øvrigt også skrives som:

$tjeck = ($numrows == "0") ? false : true;
Avatar billede Slettet bruger
30. juli 2008 - 13:27 #3
select count(*) from TABLENAME where produkt = 'whatever'

i de fleste programmerings sprog er et tal > 0 lig true, så resultatet af ovenstående er nok. Det er den jeg oftest anvender.
Avatar billede w13 Novice
30. juli 2008 - 13:37 #4
Du bør vel have count(*) AS noget ?
Avatar billede Slettet bruger
30. juli 2008 - 13:46 #5
Det kommer an på om man vil have det ud som noget navngivet. I mange tilfælde er dette ikke nødvendigt. I Perl ville jeg anvende

my ($res) = $DBI->selectrow_array('select count(*) from $TABLE where produkt=?',undef,$produkt_id);
return $res;

hvor jeg samtidigt har sikret mig mod nasty data
Avatar billede Slettet bruger
30. juli 2008 - 13:46 #6
hov det skulle have været

"select count(*) from $TABLE where produkt=?"

pga. $TABLE
Avatar billede lord_mike Nybegynder
30. juli 2008 - 16:12 #7
SELECT IF(COUNT(*) > 0, 1, 0) AS rExist FROM options_farver_id where produkt = "&produkt_id&";

Denne opfylder dit krav. 1 (true) hvis der er noget, og 0 (false) hvis der ikke er.

- Mike
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester