【问题标题】:Can anybody write the select query for this issue?任何人都可以为此问题编写选择查询吗?
【发布时间】:2011-04-12 17:54:12
【问题描述】:

我有两张表,即 mit_follow 和 mit_tweets

在 mit_follow 表结构中:

Id    UserName            followers          Following

1     dobriyalji          manish             Sachin
2     dobriyalji          karthik            parul

在 mit_tweets 表结构中:

Id        UserName          tweets

1         dobriyalji        hi everybody
2         manish            hello all m karthik

我想为此编写选择查询..

如果我使用用户名 dobriyalji .... 登录并在 mit_tweets 表中发布推文,那么 dobriyalji 和他的所有关注者都可以查看他们的消息,并且所有关注者的消息都将被 dobriyalji 查看...我正在使用 gridview 显示 mit_tweets 表在网络表单中......

如果任何新成员登录到他们的帐户并发布推文,那么在 gridview 中只会显示新成员的 msg ...

任何人都可以为此编写选择查询吗?

【问题讨论】:

    标签: asp.net sql vb.net visual-studio-2008 sql-server-2005


    【解决方案1】:

    我不确定您的 mit_follow 表。你的追随者和关注的专栏真的没有意义。当然,表格应该看起来更像:

    id user            user_followed
    ** *************** ******************
    1  dobriyalji      Sachin
    2  dobriyalji      parul
    3  manish          dobriyalji      
    4  karthik         dobriyalji
    

    这样查询起来会容易得多

    【讨论】:

      【解决方案2】:
      SELECT mit_tweets.* 
      FROM mit_tweets 
      WHERE username = 'dobriyalji' 
      
      UNION 
      
      SELECT t2.* 
      FROM mit_tweets 
          INNER JOIN mit_follow ON mit_tweets.Username = mit_follow.Username 
          INNER JOIN mit_tweets t2 ON mit_follow.following = t2.Username 
      WHERE mit_tweets.username = 'dobriyalji'
      

      你是这个意思吗?

      或者这样:

      select *
      from mit_tweets
      where Username = 'dobryialji' 
      or username in ( select mit_follow.followers from mit_follow where mit_follow.username = mit_tweets.username )
      

      这对我来说没有意义。如果我是 dobryialji,那么我想查看我自己的推文,以及我关注的人的推文。如果是这样,则将 mit_follow.followers 更改为 mit_follow.following。

      【讨论】:

      • 我不知道如何编写 sql 选择查询...但是我想要的在上面的问题中提到...让我检查一下
      • 你根据我的问题马特写了这个查询
      • matt .... 这个查询的问题..如果 dobriyalji 写任何消息,那么消息将不会显示给他们的关注者..
      • 两个查询显示相同..我想要...如果 person1 跟随 person2,那么 person1 和 person2 中显示的消息将是相同的,无论是 person login to their account 还是 person2 login to their account 。 ..
      • 这没有任何意义。编辑您的问题并在其中放入更多数据,然后准确地写出您希望返回的行。在你这样做之前,我不能再帮你了。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-12
      • 2011-07-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多