我有一个表格,其中包含商户名称字段和他们提供的服务字段。Services字段是一个逗号分隔的整数列表,它与另一个Services表相关,带有Serviceid和ServiceName字段。我正在尝试创建一个连接这两个查询的查询,这样我就可以获得商家列表以及服务名称。到目前为止,我的解决方案是在我最初的“foreach”循环中执行第二个循环,但这可能意味着对每个商家名称调用5或6个数据库。在使用StackOverflow(谷歌)之后,我注意到使用逗号分隔的字段可能不是最好的方法。有没有人有办法进行连接,或者有关于如何更好地设置数据库结构的想法?非常感谢! 最佳
我使用mySQL,我有一个带有BLOB“联系人”字段的成员表,其中包含其他成员ID的逗号分隔列表:TABLEmembers:id_member=1firstname='John'contacts(BLOB)='4,6,7,2,5'我想通过单个查询检索个人“联系人”列表中的所有名字。我尝试了以下方法:SELECTfirstnamefrommembersWHEREid_memberIN(SELECTcontactsFROMmembersWHEREid_member=1);它只返回一行,但是当我尝试时:SELECTfirstnamefrommembersWHEREid_memberIN(4,
我正在使用带有laravel框架的php。我想从包含用户ID的表中获取行。这里的问题是用户id是整数值,而column(author)包含多个逗号分隔的整数值。这是示例。DB::table('stories')->where('author','4')->get();author列有值:第1行:2、4、5|第2行:1,3,14|第3行:4,5我会得到第1行和第3行。所以,请帮助我得到正确的行。 最佳答案 你可以像这样使用whereRawDB::table('stories')->whereRaw("find_in_set('4',a
我在对数据库运行选择查询时遇到了一些问题。一些数据保存为逗号分隔值列表,例如:Table:example_tbl|Id|People|Children||1|1,2,3|8,10,3||2|7,6,12|18,19,2|还有一个我正在尝试运行的例子:query($sql);$print_r($result);?>上面的脚本应该在People列中找到“1”后返回第1行,但显然我把它搞砸了。我遇到的问题是我认为我的IN语句是倒过来的,即如果$selection是逗号分隔(内爆)列表,我认为此方法将选择值,而不是我尝试的方式用它。我不知道我从上面的db类发送和接收的内容是否太重要了,但如果您
我目前有一个像这样的MySQL表:id|friend1|21|51|103|615|1921|4我正在尝试获取一个特定用户的所有friendID,并将它们排列到一个逗号分隔的列表中。例如,抓取user1的好友,返回为$friend_list=2,5,10目前,我有:$sql="SELECTfriendFROMtable__friendsWHEREid=".$user_id;虽然这只捕获了一行..请帮助!谢谢 最佳答案 您想使用GROUP_CONCAT:$sql="SELECTGROUP_CONCAT(friend)FROMtable
我在那个表中有一个mysql表注释,一个字段是标签,所有标签都是逗号分隔的评论表NameReplyTagsabnew,old,facebook,fbbdwater,faebook,wallbrwall,php,fbcqname,facebook,emailayweather,cold,oldawtwitter,next,pet,fb我需要用mysql查询得到这个表中最常用的标签.. 最佳答案 我认为最好的方法是为标签和标签与你的表之间的关系使用一个单独的表(即:CommentTags),它可以让你快速找到那些使用任何特定标签的评论,
我必须运行这样的查询(查询1)-selectsomethingfromsometablewheresomeIdin(1,2,3)我想为ID部分保留一个变量,像这样(查询2)-set@myIds="1,2,3";selectsomethingfromsometablewheresomeIdin(@myIds);但这并没有给出预期的结果(给出一个空的结果集),也没有查询错误。我检查过,如果我将逗号分隔的ID括在引号内,则查询结果为空结果集(查询3)-selectsomethingfromsometablewheresomeIdin("1,2,3");我想当我像上面显示的那样使用变量@myI
我想针对单个值测试具有多个值的字段,我的SQL就像.WHEREid(1);数据库值就像id---1,22,31,3,4代码点火器$this->db->select('*');$this->db->from('content');$this->db->where('name',$name);$this->db->where('id',$id);我试过了$this->db->where_in('id',explode(',',$id));但它不起作用。请帮我解决这个问题。 最佳答案 要从给定的集合中查找值,您可以使用FIND_IN_SE
我正在努力帮助我父亲——他在他的工作中给了我一个日程安排应用程序的导出。我们正在尝试查看是否可以将其导入mysql数据库,以便他/同事可以在线协作。我已经尝试了很多不同的方法,但似乎没有一个能奏效——这不是我的专长领域。导出可以在这里看到:http://roikingon.com/export.txt任何关于如何解析这个的帮助/建议将不胜感激!谢谢!! 最佳答案 我已经尝试编写一个(有点动态的)固定列解析器。看看:http://codepad.org/oAiKD0e7(对于SO来说太长了,但它主要只是“数据”)。我注意到了什么Tex
我有两张table表一IDNAME1Person12Person23Person3表2IDGROUP_ID1122,3以上所有列中的ID均指代相同的ID(示例-部门)我的预期输出(通过连接两个表)GROUP_IDNAME1Person12,3Person2,Person3是否有可以实现此目的的查询。非常感谢您的帮助。谢谢。 最佳答案 您可以在此使用FIND_IN_SET()和GROUP_CONCAT(),SELECTb.Group_ID,GROUP_CONCAT(a.name)nameFROMTable2bINNERJOINTabl