gpt4 book ai didi

php - 矩阵上推荐的空闲单元格。使用 MySQL

转载 作者:行者123 更新时间:2023-11-29 00:14:31 24 4
gpt4 key购买 nike

我有两张 table

  1. 容器

    它包含

    • refid为主键
    • rows//矩阵中的行数
    • columns//矩阵中的列数
  2. data_on_matrix

    它包含

    • refid为主键
    • cell_id//放置在矩阵上的数据的单元格
    • text_data//矩阵数据
    • container_id//矩阵上的数据

image here

我只是通过容器 X 来制作这个UI。如果有人点击任何单元格,该单元格将通过在 data_on_matrix table 上插入一行来填充数据。

我的问题是

如何为用户推荐容器上的空闲单元格。如何通过这个实现是否可以使用 SQL 或任何 UI 技巧?

最佳答案

(从评论中重复)

如果您在矩阵中查找不存在的单元格,则需要一个“数字”表,因为 SQL 无法无中生有。

create table numbers (nr int(11) not null primary key auto_increment);
insert into numbers values (1),(2),(3),(4),(5);

(依此类推,直到您达到最大可能或可想象的维度)。

然后您需要 data_on_matrix 条目的行号和列号:

alter table data_on_matrix add column row_id int(11) not null, add column col_id int(11) not null;

如果你想读取矩阵中已经存在的单元格,你只需读取

select row_id, col_id, text_data from data_on_matrix where refid = {$refid};

如果您要查找空闲单元格,只需选择

select r.nr as row_id, c.nr as col_id
from numbers r, numbers c
left join data_on_matrix d on d.col_id = c.id and d.row_id = r.id and d.refid = {$refId}
where d.ref_id is null and r.id <= {$rows} and c.id <= {$columns}

使用 refid,行和列来自表容器。直接加入容器也很容易,但您可能已经在 php 中有了一个容器列表及其属性。

关于php - 矩阵上推荐的空闲单元格。使用 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23473018/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com