Avatar billede alaflam Nybegynder
15. oktober 2005 - 14:44 Der er 5 kommentarer og
1 løsning

sql fra 2 tabler?

Hejsa,


jeg har 2 tabler.

id | name
1    test
2    okay

id | subid
1      1
1      1
1      1
1      1
1      2
1      2

hvordan laver jeg sådan en udtræk fra min 2 tabler.

test (4)
okay (2)
Avatar billede arne_v Ekspert
15. oktober 2005 - 14:52 #1
SELECT name,COUNT(*)
FROM tabel1,tabel2
WHERE tabel1.id=tabel2.subid
GROUP BY name

vil jeg tro
Avatar billede horsmark Nybegynder
15. oktober 2005 - 15:32 #2
eller måske...

SELECT name, sum(tabel2.subid) as mySum
FROM tabel1,tabel2
WHERE
tabel1.id=tabel2.subid
GROUP BY
name
Avatar billede alaflam Nybegynder
15. oktober 2005 - 20:31 #3
jeg fik empty i begge tilfælde.
Avatar billede arne_v Ekspert
15. oktober 2005 - 21:11 #4
mysql> CREATE TABLE tabel1 (id INTEGER PRIMARY KEY,name VARCHAR(20));
Query OK, 0 rows affected (0.03 sec)

mysql> CREATE TABLE tabel2 (id INTEGER PRIMARY KEY, subid INTEGER);
Query OK, 0 rows affected (0.02 sec)

mysql> INSERT INTO tabel1 VALUES(1,'test');
Query OK, 1 row affected (0.02 sec)

mysql> INSERT INTO tabel1 VALUES(2,'okay');
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO tabel2 VALUES(1,1);
Query OK, 1 row affected (0.01 sec)

mysql> INSERT INTO tabel2 VALUES(2,1);
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO tabel2 VALUES(3,1);
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO tabel2 VALUES(4,1);
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO tabel2 VALUES(5,2);
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO tabel2 VALUES(6,2);
Query OK, 1 row affected (0.00 sec)

mysql> SELECT * FROM tabel1;
+----+------+
| id | name |
+----+------+
|  1 | test |
|  2 | okay |
+----+------+
2 rows in set (0.00 sec)

mysql> SELECT * FROM tabel2;
+----+-------+
| id | subid |
+----+-------+
|  1 |    1 |
|  2 |    1 |
|  3 |    1 |
|  4 |    1 |
|  5 |    2 |
|  6 |    2 |
+----+-------+
6 rows in set (0.00 sec)

mysql> SELECT name,COUNT(*)
    -> FROM tabel1,tabel2
    -> WHERE tabel1.id=tabel2.subid
    -> GROUP BY name;
+------+----------+
| name | COUNT(*) |
+------+----------+
| okay |        2 |
| test |        4 |
+------+----------+
2 rows in set (0.00 sec)
Avatar billede alaflam Nybegynder
17. oktober 2005 - 12:16 #5
wow :)

så er det nok min fejl det ikke virkede som det skal...  :(

må jeg få et svar.
Avatar billede arne_v Ekspert
17. oktober 2005 - 12:54 #6
eller så mangler vi en brik til puslespillet
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
Kurser inden for grundlæggende programmering

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