webForumDet fria alternativet

Skriva ut sql-sats men tabeller innehåller lika fält

Databaser & SQL

5 svar · 489 visningar · startad av wally_91

Medlem sedan feb. 2006511 inlägg
Frågan#1

Hej alla på wF!

Jag håller på med ett relativt enkelt skript. Jag vill skriva ut en sql-sats men tabeller innehåller lika fält (t.ex. tabell1 har id vilket tabell2 också har).

Hur ska jag skriva ut i php-kod?

$s = mysql_query("SELECT inlagg.*, poster.* FROM inlagg JOIN poster ON poster.postid = inlagg.belong WHERE inlagg.belong = '" .$_GET['belongsto']. "' ORDER BY inlagg.id LIMIT 20") or exit(mysql_error());

while ($r = mysql_fetch_array($s)){

echo $r['inlagg.id'];
echo "<p>";
echo $r['poster.id'];
echo "</p>";
}

Kan man göra så (vilket jag inte tror och jag har testat) och hur ska man göra det?

Medlem sedan feb. 2006511 inlägg
#2

Någon som kan hjälpa mig?

Medlem sedan dec. 19996 721 inlägg
#3

Aha, trodde först att du ville skriva ut en sql-sats, men det är ju resultatet du vill ha ut. Ange inte kolumnerna med * i sql-satsen, utan ange dem med namn och alias.

SELECT inlagg.id as inlaggsid, poster.id as postid ......
Medlem sedan feb. 2006511 inlägg
#4

emission skrev:

Aha, trodde först att du ville skriva ut en sql-sats, men det är ju resultatet du vill ha ut. Ange inte kolumnerna med * i sql-satsen, utan ange dem med namn och alias.

SELECT inlagg.id as inlaggsid, poster.id as postid ......

Smart! Men jag tänkte måste jag göra så med alla eller kan jag göra något i stil med

SELECT inlagg.*, inlagg.id as inlaggsid....
Medlem sedan dec. 19996 721 inlägg
#5

Det kan du, men det är en dålig ovana att plocka ut fler kolumner än vad som behövs.

Medlem sedan nov. 2000857 inlägg
#6

Flyttas från PHP..

246 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)