Mysql
 sql >> база данни >  >> RDS >> Mysql

Избиране на колона от таблица в MySQL два пъти

Ще трябва да се присъедините към таблица b два пъти и всеки път с различно име на таблица (b1, b2), като използвате as

select *
from a join b as b1 on a.to = b1.lid 
       join b as b2 on a.from = b2.lid 

така че резултатът ще бъде

--------------------------------------------
|a.uid | a.to | b1.name | a.from | b2.name |
--------------------------------------------
|   1  |   1  |  one    |   2    | two     |
--------------------------------------------

но това, което вероятно искате, е да предотвратите сблъсък на имена - ако напр. извикайте го от PHP - така че след това също преименувайте колоните:

select a.*, b1.name as toName, b2.name as fromName
... (rest of the query as above)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - Изберете с COUNT, връщайки NULL ред

  2. („SQL съдържа 0 маркера за параметри, но са предоставени 50 параметъра“, „HY000“) или TypeError:обектът „кортеж“ не може да бъде извикан

  3. Вмъкване на ID от една таблица в друга в MySQL php

  4. Какви са начините да получите общи приятели в сценарий на (1, 2) (2, 1) приятелство?

  5. Защо find_in_set работи, но клауза IN