Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[MySQL] Select uit 2 tabellen, veldnamen prefixen? *

Pagina: 1
Acties:
  • 101 views sinds 30-01-2008
  • Reageer

  • Keiichi
  • Registratie: Juni 2005
  • Laatst online: 20-11 20:29
Ik heb een eenvoudige query, met als resultaat:

code:
1
2
3
4
5
6
7
8
mysql> SELECT * FROM `een`,`twee` WHERE `twee`.`link` = `een`.`id`;
+----+----------+----+------+
| id | val      | id | link |
+----+----------+----+------+
|  2 | rij twee |  1 |    2 |
|  1 | rij een  |  2 |    1 |
+----+----------+----+------+
2 rows in set (0.00 sec)


Er zijn dus 2 tabellen, 'een' en 'twee'. Beide hebben een unieke sleutel 'id' . Ik vind het niet denderend handig, omdat ik bij het uitlezen met scripts deze in hashes stop. Een oplossing is wel in de code te maken, maar ik vroeg me af of het niet op een of andere manier mogelijk was om bijvoorbeeld de veldnamen te prefixen met de tabel naam. Je krijgt dan bv de velden een_id, een_val, twee_id, twee_link.

Is dit mogelijk? (En heeft misschien iemand betere ideeen, ik heb het gevoel dat ik nog maar moeilijk probeer te doen)

Solar @ Dongen: http://solar.searchy.net/ - Penpal International: http://ppi.searchy.net/


  • Cartman!
  • Registratie: April 2000
  • Niet online
code:
1
2
3
4
5
6
SELECT
een.id as id_een,
twee.id as id_twee
FROM
een,
twee


een idee?

edit: of dus gewoon je naam renamen in mysql naar id_een en id_twee, wat jij handiger vind.

[ Voor 39% gewijzigd door Cartman! op 24-01-2008 22:38 ]


  • Duroth
  • Registratie: Juni 2007
  • Laatst online: 27-04-2016

Duroth

No rest for the tweaked

code:
1
mysql> SELECT een.id AS eenid, een.val, twee.id as tweeid, twee.link FROM `een`,`twee` WHERE `twee`.`link` = `een`.`id`;


Hiermee geef je dus aan dat de beide id's een andere naam toegewezen krijgen in de resultset.

edit:
Aargh, moet sneller tikken volgende keer

[ Voor 11% gewijzigd door Duroth op 24-01-2008 22:39 ]


  • _Gekkie_
  • Registratie: Oktober 2000
  • Laatst online: 24-06 20:21

_Gekkie_

And the cow said: Helloooooow?

sowieso is het aan te raden je tabellen (en db's) te backticken in je queries..
dus:
code:
1
2
3
4
5
6
SELECT
`db`.`een`.`id` AS `id_een`,
`db`.`twee`.`id` AS `id_twee`
FROM
`db`.`een`,
`db`.`twee`

[ Voor 3% gewijzigd door _Gekkie_ op 25-01-2008 16:51 ]

Gekkie is a proud member of TheBenny!


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
En voor de terminologie: dat heet dus een alias ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Keiichi
  • Registratie: Juni 2005
  • Laatst online: 20-11 20:29
Dank jullie, ik dacht te moeilijk dus. :$

Solar @ Dongen: http://solar.searchy.net/ - Penpal International: http://ppi.searchy.net/

Pagina: 1