小编som*_*ser的帖子

选择列在多个记录中包含相同数据的行

我有一个表,其中有一列名为article_title. 假设表名是articles. 我需要找出多个记录中article_title数据相同的记录。

这是我所拥有的:

select a.* 
from articles a 
where a.article_title = (select article_title 
                         from articles 
                         where article_title = a.article_title 
                         AND a.id <> articles.id)
Run Code Online (Sandbox Code Playgroud)

mysql duplication

36
推荐指数
2
解决办法
39万
查看次数

COUNT 行的父 id 等于我们在一个查询中父 id 为 0 的行

我想使用 MySQL 在一个查询中执行以下操作:

  • 抓取一个 parent_id 为 0 的行
  • 抓取我们抓取的具有 parent_id 为 0 的行的 parent_id 的所有行的计数

如何在一个查询中完成此操作?如果您需要更多信息,请告诉我,我很乐意为您提供帮助。我不是创建问题的专家,所以请告诉我您需要什么更多信息。

这是我现在正在做的一个例子:

select id from messages where parent_id=0
Run Code Online (Sandbox Code Playgroud)

进而

select count(id) from messages where parent_id={{previously_chosen_id}}
Run Code Online (Sandbox Code Playgroud)

如何获得一次性查询?就像是...

select id, count(records where parent_id=the id we just asked for)
Run Code Online (Sandbox Code Playgroud)

或者,有没有更好的方法来处理这个问题?你看,目前我必须运行大量查询才能找到计数,而我宁愿一次性完成。

mysql tree hierarchy

10
推荐指数
1
解决办法
3万
查看次数

数据库重组 - 有益吗?

我有一张电子邮件表。然后,我有一张桌子,里面有message parts.

Parts表包含一个

   field_id,  message_id, and data 
Run Code Online (Sandbox Code Playgroud)

当时我使用 Parts 来命名表,但使用 field_id 作为列。仅供参考

例如,a part_idof 2 将是消息的主题。我有subject, date, htmlbody, 和 的部分textbody。由于这种结构,与将所有数据推送到消息表中相比,每封电子邮件(一个用于部分,另一个用于与电子邮件关联的电子邮件地址)大约多 2 个查询。我发现这种结构是最好的,但我开始认为它可能是错误的并且对性能不是最好的。

我的问题是,重组数据库是否符合我的最佳利益?我宁愿不。

我正在考虑将htmlbodyandtextbodysubjectanddate移到messages table. 另一种解决方案是在一个查询中从表中获取所有emails和它们。我可以在一个查询中获取所有 id,然后为第二个查询执行 IN(ids)。dataParts

CREATE TABLE IF NOT EXISTS `messages` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `user_id` int(10) NOT NULL,
  `account_folder_id` int(10) NOT NULL,
  `hash` varchar(255) NOT NULL,
  `uid` int(10) …
Run Code Online (Sandbox Code Playgroud)

mysql

6
推荐指数
1
解决办法
550
查看次数

选择距离到期日期时间为 3 天的记录

我有一个包含datetime timestamp. 我正在寻找的是根据datetime timestamp.

这是我到目前为止所拥有的,尽管我认为它不正确:

    SELECT jobs.*,occupations.title
    FROM jobs
    LEFT JOIN occupations on occupations.id = jobs.occupation_id
    WHERE DATE_ADD(jobs.`date_created`,INTERVAL 27 DAY) = DATE(NOW())
Run Code Online (Sandbox Code Playgroud)

请帮忙 :)

mysql datetime date

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

mysql ×4

date ×1

datetime ×1

duplication ×1

hierarchy ×1

tree ×1