我有一个问题是从PostgreSQL表中删除记录,使用LEFT JOIN.
我想用以下查询删除我得到的行:
SELECT * FROM url
LEFT JOIN link_type ON url.link_type = link_type.id
WHERE link_type.id IS NULL
Run Code Online (Sandbox Code Playgroud)
为此,我做了以下事情:
DELETE FROM url
USING link_type
WHERE url.link_type = link_type.id AND link_type.id IS NULL
Run Code Online (Sandbox Code Playgroud)
查询有效,但不会删除任何内容,尽管这正是文档中解释的内容:http://www.postgresql.org/docs/current/static/sql-delete.html.
我的问题是由于IS NULL在查询中还是我错过了什么?
我有一个包含网站上发布的最后评论的表格,我想根据评论加入不同的表格type。
Comments 表类似于这个结构:
id | type | ressource_id |
---+------+--------------+
1 | 1 | 10 |
2 | 3 | 7 |
Run Code Online (Sandbox Code Playgroud)
我想要做的是加入“新闻”表,如果输入type = 1(on news.id = comments.ressource_id),“教程”表,如果输入type = 3,等等。
请问我该怎么做?我使用CASEand尝试了不同的查询UNION,但从未得到预期的结果。
谢谢。
我必须重新格式化一个包含以下内容的字符串:
$string = "---8\7----";
Run Code Online (Sandbox Code Playgroud)
问题是'\ 7'被PHP解释为八进制值而不仅仅是'\'然后是'7'.
我怎么能阻止php这样做呢?当然,我需要保持'\'谢谢.
我使用 DOM 制作了一个 PHP 脚本来动态自动调整图像大小。该脚本有效,但当我尝试在<a ...>和之间封装调整大小的图像</a>(以在灯箱中显示正常大小)时,我遇到了问题。
问题是调整大小的图像显示在 $html 输出的末尾,这不是正确的位置。请问我做错了什么?
这是我的代码:
$dom = new DOMDocument();
@$dom->loadHTML($html);
$dom->preserveWhiteSpace = false;
$max_width = 530;
$images = $dom->getElementsByTagName('img');
foreach ($images as $image) {
$img_width = $image->getAttribute('width');
$img_height = $image->getAttribute('height');
if($img_width > $max_width) {
//Scale
$scale_factor = $max_width/$img_width;
$new_height = floor($img_height * $scale_factor);
//Set new attributes
$image->setAttribute('width', $max_width);
$image->setAttribute('height', $new_height);
//Add Link
$Zoom = $dom->createElement('a');
$Zoom->setAttribute('class', 'zoom');
$Zoom->setAttribute('href', $src);
$dom->appendChild($Zoom);
$Zoom->appendChild($image);
}
}
Run Code Online (Sandbox Code Playgroud)
感谢您的帮助 !