簡體   English   中英

使用外鍵從其他表中選擇數據?

[英]Selecting data from other table using a foreign key?

因此,我正在嘗試從ranks表中獲取特定member_id的氏族標簽。 但是我不知道該怎么做。 我使用了INNER JOIN命令,但沒有任何效果。

CREATE TABLE ranks(
    rank VARCHAR(8),
    tag VARCHAR(18) NOT NULL,
    PRIMARY KEY(rank)
    );

CREATE TABLE member(
    member_id INT UNSIGNED AUTO_INCREMENT,
    first_name VARCHAR(15) NOT NULL,
    last_name VARCHAR(15),
    ign VARCHAR(20) NOT NULL,
    rank VARCHAR(8) NOT NULL,
    joined_date DATE NOT NULL,
    dob DATE,
    sex ENUM('M','F') NOT NULL,
    country VARCHAR(3) NOT NULL,
    PRIMARY KEY(member_id),
    FOREIGN KEY(rank) REFERENCES ranks(rank)
    );

INSERT INTO ranks VALUES
    ('Founder','|NoMercy|King'),
    ('Admin','^1|NoMercy|^7'),
    ('TmpAdmin','^5|NoMercy|^7'),
    ('Pro','^1|NoMercy PRO|^7'),
    ('Member','^4|NoMercy|^7'),
    ('Banned','BANNED');

INSERT INTO member VALUES
    (NULL,'Reznov','NULL','REZ','Member','2017/12/22','1954/02/28','M','RUS'),
    (NULL,'Amanda','NULL','S3XXY|G!RL|','Pro','2018/01/05','1992/01/25','F','USA'),
    (NULL,'Elmasri','Navathe','INDIAN_Noob _XOX','TmpAdmin','2018/04/02','1960/08/25','M','IND'),
    (NULL,'Tony','Silva','Cool KiD','Member','2018/04/26','1988/02/22','M','BR'),
    (NULL,'Hashan','NULL','Big Papa','Member','2018/05/08','1996/06/12','M','NZ'),
    (NULL,'Emma','Watson','EmmaXXX','Banned','2018/06/10','1985/05/22','F','UK');

我需要為特定成員輸出正確的標簽。 它應該只顯示標簽。

請幫忙!

下面的查詢應該工作

SELECT tag FROM ranks INNER JOIN member  ON ranks.rank=member.rank 
      where member_id=1; 

http://www.sqlfiddle.com/#!9/e90392/1

    tag
^4|NoMercy|^7

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM