01. maj 2002 - 01:41
Der er
1 kommentar og
1 løsning
Samle to SQL-sætninger i en
Hej
Er det muligt, at samle disse to SQL-sætninger i en?
SELECT p.*, pt.post_subject, pt.post_text, u.users_nick, u.users_joined, u.users_posts FROM (ation_forum_posts AS p LEFT JOIN ation_forum_posts_text AS pt ON p.post_id=pt.post_id) LEFT JOIN ation_users AS u ON p.user_id=u.users_id WHERE p.topic_id=4 ORDER BY p.post_time
SELECT a.auth_title FROM ation_users AS u LEFT JOIN ation_auth AS a ON u.users_auth=a.auth_id
Ja, det kan du godt, Du skal bruge en union SQL samt ændre list i select listen.
f.eks.:
SELECT
p.felt1, p.felt2, p.felt3, pt.post_subject, pt.post_text, u.users_nick, u.users_joined, u.users_posts
FROM (ation_forum_posts AS p LEFT JOIN ation_forum_posts_text AS pt ON p.post_id=pt.post_id)
LEFT JOIN ation_users AS u ON p.user_id=u.users_id
WHERE p.topic_id=4 ORDER BY p.post_time
UNION ALL
SELECT a.auth_title, " ", " ", " ", " ", " ", " ", " " FROM ation_users AS u LEFT JOIN ation_auth AS a ON u.users_auth=a.auth_id
Tricket er at selecte ens antal kolonner i de to selects, samt sørge for at kolonnerne parvis er defineret med samme datatype.
eks.: colonne 1 i første select er defineret som tekst, derfor skal kolonne 1 i anden select også være defineret som tekst.