社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

Community James A Mohler

Community James A Mohler 最近创建的主题
Community James A Mohler 最近回复了
8 年前
回复了 Community James A Mohler 创建的主题 » 需要有关mysql查询[duplicate]的帮助

我需要一个多值列,它可以实现为一个xml字段

它可以根据需要转换为逗号分隔

querying an XML list in sql server using Xquery 是的。

作为一个xml字段,可以解决一些问题。

使用csv: 无法确保每个值都是正确的数据类型:无法阻止1、2、3、香蕉、5

使用XML: 标记中的值可以强制为正确的类型


使用csv: 无法使用外键约束将值链接到查找表;无法强制引用完整性。

使用XML: 还是个问题


使用csv: 无法强制唯一性:无法阻止1、2、3、3、3、5

使用XML: 还是个问题


使用csv: 如果不获取整个列表,则无法从列表中删除值。

使用XML: 可以删除单个项目


使用csv: 很难搜索列表中具有给定值的所有实体;必须使用效率低下的表扫描。

使用XML: 可以索引XML字段


使用csv: 很难计算列表中的元素数,或执行其他聚合查询。**

使用XML: 不是特别难


使用csv: 很难将值联接到它们引用的查找表中。**

使用XML: 不是特别难


使用csv: 很难按顺序提取列表。

使用XML: 不是特别难


使用csv: 将整数存储为字符串所占用的空间大约是存储二进制整数的两倍。

使用XML: 存储甚至比csv还要糟糕


使用csv: 加上许多逗号字符。

使用XML: 使用标记而不是逗号


简言之,使用xml可以解决分隔列表的一些问题,并且可以根据需要转换为分隔列表