首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MySQL中存储基因表达数据

在MySQL中存储基因表达数据
EN

Stack Overflow用户
提问于 2019-08-22 13:08:11
回答 1查看 48关注 0票数 0

我有m x n个基因表达数据矩阵,我希望将它们存储在MySQL中,以便可以使用PHP语言进行搜索。

M大约是100000个样本(唯一可识别)

N大约是23,300个基因(唯一可识别)

我创建了三个表,如下所示

代码语言:javascript
复制
CREATE TABLE genes (
    `gene_id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    `gene_name` varchar(99) not null
) ENGINE=InnoDB;

CREATE TABLE samples (
    `sample_id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    `sample_name` varchar(99) not null
) ENGINE=InnoDB;

CREATE TABLE gene_sample (
    `gene_id` INT NOT NULL,
    `sample_id` INT NOT NULL,
    `Expression_value` INT ,
    FOREIGN KEY(`gene_id`) REFERENCES genes (`gene_id`),
    FOREIGN KEY(`sample_id`) REFERENCES sample (`sample_id`),
) ENGINE=InnoDB;

问题是如何从mXn矩阵插入第三个表(Gene_sample)中的值?

如何在gene_sample表中存储样本和基因对应的表达式值?

EN

回答 1

Stack Overflow用户

发布于 2019-08-22 13:38:29

假设已经填充了genessamples表,并且您希望使用所有可能的组合来填充gene_sample连接表,则可以尝试使用带有交叉联接的insert:

代码语言:javascript
复制
INSERT INTO gene_sample (gene_id, sample_id)
SELECT g.gene_id, s.sample_id
FROM genes g
CROSS JOIN samples s;

当然,这不会为Expression_value列分配任何值。但理想情况下,该列甚至不属于连接表。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57602393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档