查询用于循环的数据库

时间:2017-05-02 09:14:54

标签: php mysql loops

调用我用于循环的数据库时遇到问题。

数据库查询1

SELECT id,qtyslot FROM rack WHERE theid = '1'

例如id = 2qtyslot = 12

我们创建for循环

for ($x = 1; $x <= 12; $x++) {

这里我用数据库的标识来调用数据库 1或2,4(逗号从2到4个插槽)等等。

如何选择

SELECT * FROM books WHERE idrack = '2' AND slot"......." // $x

数据库结构如下。

-----------------------
| id | slot    | name |
-----------------------
| 1  |  1      | name |
-----------------------
| 2  |  2,4    | name | --> How to define this with the above loop ($x)
-----------------------
| 3  |  5,6    | name | --> How to define this with the above loop ($x)
-----------------------
| 4  |  7      | name |
-----------------------

表格

中的结果如下
-----------------------------------------
| loop qtyslot | In slot        | remark |
-----------------------------------------
| 1            | name slot 1    | remark |
-----------------------------------------
| 2            |                |        |
---------------|                |        |
| 3            | Name slot 2,4  | remark |
---------------|                |        |
| 4            |                |        |
-----------------------------------------
| 5            |   Name in      |        |
---------------|    slot 5,6    | remark|
| 6            |                |        |
------------------------------------------
etc up to 12

任何人都可以帮助我。

1 个答案:

答案 0 :(得分:1)

您可以在mysql中使用SUBSTRING_INDEX函数。 试试这个:

SELECT * FROM books WHERE idrack = '2' AND $x BETWEEN SUBSTRING_INDEX(slot, ',', 1) and SUBSTRING_INDEX(slot, ',', -1)