MYSQL LIKE IN/匹配子字符串

标签 mysql sql

我有以下两条语句,并且希望仅在一条语句中得到它。那可能吗?

声明一,获取最近 2 天的内容:

SELECT  
    c.ID SUBTAG
FROM 
    `content` c, 
    posts p   
WHERE 
    c.id = p.id_content AND
    from_unixtime(p.scheduled) BETWEEN TIMESTAMPADD(DAY,-2,now()) AND  from_unixtime(UNIX_TIMESTAMP(NOW()))
ORDER BY from_unixtime(p.scheduled)

使用 c.id,我需要从订单中获取总和(数量)。像这样:

 SELECT 
    sum(Qty) Bestellungen, 
    SUBTAG  
 FROM 
    Orders 
 WHERE SubTag Like '%c.id%'
 GROUP BY SubTag

在表订单中,列子标签并不完全具有 c.id。它只是专栏的一部分。这就是为什么我需要这样的东西!表订单中的子标签类似于 132_子标签_kjsdf4382。

表订单看起来像:

Date_           Price   Qty     SubTag  
2017-02-20      14.98   1       b1a8cc_2_qgsGairwtape
2017-02-20      14.98   1       b1a8cc_3_qgdfgdirwtape

帖子看起来像:

ID      id_content      scheduled           ad_active   posted 
3015    82              1487754540          0            1

内容如下:

ascsubid    ID              
b1a8cc      82

查询结果应如下所示:

SubTag   Orders
b1a8cc      2

最佳答案

类似这样的事情吗?

SELECT 
    sum(Qty) Bestellungen, 
    SUBTAG  
 FROM 
    Orders 
 WHERE SubTag in 
    (SELECT c.ID 
     FROM `content` c, posts p   
     WHERE c.id = p.id_content AND
     from_unixtime(p.scheduled) BETWEEN TIMESTAMPADD(DAY,-2,now()) AND 
     from_unixtime(UNIX_TIMESTAMP(NOW()))
     and c.id Like '%c.id%')
 GROUP BY SubTag;

关于MYSQL LIKE IN/匹配子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42364872/

相关文章:

c# - Linq 查询和日期格式的问题

php - 如何在 Codeigniter 中加入表以进行搜索查询

sql - 如何获得每天最高金额前 2 名

php - 非英文字符在我的 PHP 页面上显示为问号 - 在数据库中显示正常

php - 2 个表中的条件,但仅从一张表中选择

mysql - INNER JOIN 中空值的 SQL if 语句

php - 如何在 SQL (MySQL) 中合并两个表?

sql - 分组并选择表中的最后一个插入

mysql - 手动将 MySQL 数据库文件放入数据文件夹 - WAMP - XAMPP

mysql - 在 MySQL 中为 UTF-8 内容添加一列