小编Kdd*_*ddC的帖子

LEFT JOIN仅第一行

我读了许多关于只获得左连接的第一行的线程,但是,由于某种原因,这对我不起作用.

这是我的结构(当然简化)

饲料

id |  title | content
----------------------
1  | Feed 1 | ...
Run Code Online (Sandbox Code Playgroud)

艺术家

artist_id | artist_name
-----------------------
1         | Artist 1
2         | Artist 2
Run Code Online (Sandbox Code Playgroud)

feeds_artists

rel_id | artist_id | feed_id
----------------------------
1      |     1     |    1 
2      |     2     |    1 
...
Run Code Online (Sandbox Code Playgroud)

现在我想获得文章并加入第一位艺术家,我想到了这样的事情:

SELECT *
    FROM feeds 
    LEFT JOIN feeds_artists ON wp_feeds.id = (
        SELECT feeds_artists.feed_id FROM feeds_artists
        WHERE feeds_artists.feed_id = feeds.id 
    LIMIT 1
    )
WHERE feeds.id = '13815'
Run Code Online (Sandbox Code Playgroud)

只是为了获得feed_artists的第一行,但这已经不起作用了.

我无法使用TOP因为我的数据库而且我无法对结果进行分组,feeds_artists.artist_id因为我需要按日期对它们进行排序(我通过这种方式对结果进行分组,但结果不是最新的)

用OUTER …

mysql join left-join groupwise-maximum

125
推荐指数
4
解决办法
17万
查看次数

正则表达式 - 美元符号仅匹配另一个字符

我知道有很多关于正则表达式和美元符号的线索.但我读过的那个根本没用.我有这个正则表达式\b(foo bar\$)s?\b应该匹配foo bar$foo bar$s.问题是,正则表达式只匹配foo bar$s.

因为\b(foo bar)s?\b它适用于foo barfoo bars

美元是名称的一部分,所以我不能删除它.

有任何想法吗?

php regex dollar-sign

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

标签 统计

dollar-sign ×1

groupwise-maximum ×1

join ×1

left-join ×1

mysql ×1

php ×1

regex ×1