草庐IT

mysql - 需要 2 个 MySql 查询的帮助。加入与子查询

我有2个表:用户:id,姓名消息:sender_id,receiver_id,message,read_at,created_at我需要检索2个结果,我正试图找到最佳解决方案。我已经包含了我在最后使用的查询。我需要检索用户列表,并且每个用户都有可用的信息是否有来自每个用户(他们作为发件人,我作为收件人)的任何未读消息以及是否有任何已读消息我们之间(他们发送我是接收者或者我发送他们是接收者)我需要与上面相同,但只需要我们之间有任何消息传递的成员,首先按未读消息排序,然后按最后收到的消息排序。请问有什么建议吗?这应该通过连接还是子查询来完成?第一种情况我不需要计数,我只需要知道是否有至少一

MySql:通过联合或加入计数选择

我需要一种方法让页面管理员查看他们页面的成员,这些成员是按照用户在该特定页面上的帖子总数排序的。帖子存储在不同的表中,例如投票、下载、wiki等(例如15个表)。每个都有id、user_id、page_id、标题、内容等结构。列出页面所有用户的表称为“收藏夹”。其结构很简单,即id、user_id、page_id、date。我目前有一个查询,将所有“内容表”联合在一起,以便特定用户在网站上显示他们在网站上的所有帖子,考虑到它在哪个页面上,我可以使用WHERE轻松地使其特定于每个页面page_id=$page_id)。我尝试使用该代码来执行我在主持人区域中尝试执行的操作。正如我提到的,在

php - MYSQL 即使使用 DISTINCT 也加入重复结果

我有2个mysql表,一个称为“用户”,另一个称为“连接”表users有关于用户的信息,有3行:mikhaguymaricelaTableconnections有twitter这样的用户之间的联系(例如mikhafollowingmaricela和maricelafollowingmikha)Connections有以下几行:username1|username2--------------------------guy|maricelamikha|guymikha|maricela我想获取有关“mikha”的信息,包括他关注的人数和关注他的人数。我使用以下查询:SELECT*,COU

mysql - 加入 2 个 mysql 表并按 1 个表中相同行的数量排序

我需要一些关于mysql查询的帮助。我有两张table,表1-照片(photo_id、photo_url)1-----www.someurl.com2-----www.someurl.com3-----www.someurl.com4-----www.someurl.com表2-收藏夹(favorite_id、user_id、photo_id)1--------5------12------5------23------6------14------6------35------7------26------7------37------8------37------8------4我

mysql - 向表中添加列或创建新表并加入

我有以下设置:一个有n列的表格,其中包含比萨饼的详细信息。此时有4种披萨到目前为止,所有比萨饼都有相同的详细信息,每个详细信息都保存在一列中。但是现在出现了一种叫做super披萨的新型披萨,它还有两种类型的细节需要保存。有两种方法可以做到这一点(我可以想到):添加到现有表格的列,并为其余4种比萨饼类型将它们留空/为空/无论什么创建一个包含3列(idPizza、newDetail1和newDetail2)的新表,将pizza保存为其余的pizzas,当我获​​得数据时加入2个表第一个选项的缺点是我保留了除新类型以外的所有比萨饼的无用数据(平均比萨饼分布表的80%)。第二种选择的缺点是每次

mysql - 在不同的表上加入两个相似的查询 - MySQL OR

我在使用MySQL查询时遇到了问题(我是新手,请放轻松!)。我有一个有电视节目的网站,我想根据两个不同的Action(对于自定义时间表)来选择在两个日期(没问题)之间播出的剧集。基本上,如果用户正在关注(uses_follow_shows)或观看节目(user_watched),我想展示这一集所以我想我会像下面那样(query_on_followORquery_on_watch)但这不起作用(我得到1200行它不是3,而是从user_watched获取每个现有行。我以为这条语句可以做到,但事实并非如此,我不明白为什么SELECT*FROMshow_episode_airdate,sho

mysql - 在条件字段上加入

我有一个消息表:idsender_idrecipient_id我想提取用户(id:1)的所有消息,他是发件人或收件人并加入他正在与之交谈的“其他人”。类似于:SELECT*FROM`message`LEFTJOIN`user`ASuONIF(sender_id!=1,sender_id=u.id,recipient_id=u.id)WHEREsender_id=1ORrecipient_id=1我没有同时加入sender和recipient的原因是我已经有我正在搜索的用户,所以我认为加入是一种浪费他在每条消息上-除非你另有说明!这个查询是我从另一个SO问题得到的,但我读到它根本没有效率

熊猫不匹配的列名称加入

我有一些时间序列健康数据的熊猫pivot_table:我想每次为每种身体类型的每种医院的这两个指标的商人提供:这样的人:如何在数据框架中实现这一目标?看答案我通过移动解决了这个问题bodytype从columns至index通过创建不同的pivot_table,然后简单地分开。pivot_df["my_metric"]=pivot_df["heart_rate"]/pivot_df["blood_pressure"]

mysql - 选择第一个加入的值,而不是全部

我有表:'gallery'-informationaboutexistinggalleriesid_gallerynamedate=========================1...timestamp'photo'-informationandnameofeveryphotoinsystemid_photophoto_name===================1somename'photo_gallery'-"connecting"table,whichsayswhichphotoareinwhichgalleryid_photo_galleryid_photoid_gall

php - Codeigniter 数据库根据多个值加入两列

我想帮助解决以下问题:-$this->db->select('nbr.*,dm.dma,st.abbrevasstate,unit.size_titleasad_size_title,unit_u.size_titleasad_unit_title,di.size_titleasad_di_title,color.titleascolor_title');$this->db->from('default_new_buy_requestasnbr');$this->db->join('default_dmadataasdm','nbr.dma_id=dm.id','left');$thi