2014-10-06 40 views
0

我很喜欢基本的MySQL命令以及复杂的连接,但不确定我遇到过这种数组或数据类型。是否被认为是MySQL数组?

代码如下:

a:4:{i:9888;s:0:"";i:17148;s:0:"";i:9879;s:0:"";i:9881;s:0:"";} 
a:1:{i:9857;s:0:"";} 
a:0:{} 

有人能指出我在下面的正确方向:

  1. 这是什么叫什么?
  2. 我该如何做一些没有PHP循环的基本命令?如得到一切 其中A大于1?
  3. 获取每一行,包括9857.
+1

这看起来像一个PHP [序列化对象](http://php.net/manual/en/function.serialize.php)。一个复杂对象的字符串表示。把它想成强类型的JSON。 – stakolee 2014-10-06 19:14:51

+3

有没有这样的事情作为“MySQL数组”。关系数据库中不存在数组。有“套”数据。这些是序列化的PHP **数组。 – 2014-10-06 19:14:57

+0

你的数据库中有那些PHP序列化的对象字符串? – 2014-10-06 19:15:50

回答

0

除了解释字符串实际是什么,我告诉你有关MySQL中的数组。

实际上,它不存在。你可以通过使用dynamic columns来建立一个肮脏的数组,但它确实很脏。 还有SETENUM,其将数据的(预定义的)集合转换成位掩码。我正在使用数百个表的网上商店,我们没有使用ENUM和SET一次。

一个适当的方式在MySQL执行阵列许多一对多或实体之间的“一对多”关联关系

汽车有几个轮(一阵列轮!)?几个车轮连接到一辆车?

您将建立两个表并通过foreign key连接它们以实现阵列。这不是一个“数据类型”种类,而是一个“关系”数组。

相关问题