我在R中有一个字符串列表,如下所示:
WDN.TO
WDR.N
WDS.AX
WEC.AX
WEC.N
WED.TO
Run Code Online (Sandbox Code Playgroud)
我想从字符"."开始获取字符串的所有后缀,结果应如下所示:
.TO
.N
.AX
.AX
.N
.TO
Run Code Online (Sandbox Code Playgroud)
有人有主意吗?
我正在寻找一种简单的方法来删除数据库中的所有数据并保留结构(表,关系等......).我使用postgreSQL,但我认为,如果有命令这样做,它不是postgres特有的.
谢谢,
达米安
我在SQL Server 2008 R2实例中有这个表,我有一个计划的进程,每晚运行它.该表在任何时候都可以有多达500K的记录.处理完这个表之后,我需要从中删除所有行,所以我想知道以下哪种方法会产生最少的开销(即过多的事务日志条目):
删除表的内容是由于时间和它所做的额外事务日志条目.
共识似乎是截断,谢谢大家!
是否有可能使用一个SQL语句,多个表截断?
像这样:
truncate table #OBJ_AvailabilityTraining, #OBJ_AvailabilityHoliday, #Dates_temp;
Run Code Online (Sandbox Code Playgroud)
问候
我正在实施以下内容:
我想知道是否有人能够"截断"linux中的给定文件?截断是按文件大小,例如,如果文件是10GB,我想截断文件的前100MB,并保留文件剩余9.9GB.有人可以帮忙吗?
谢谢
哪个是最有效的方法来舍入一个数字然后截断它(在四舍五入后删除小数位)?
例如,如果小数大于0.5(即0.6,0.7等),我想向上舍入然后截断(情况1).否则,我想截断(案例2)
for example:
232.98266601563 => after rounding and truncate = 233 (case 1)
232.49445450000 => after rounding and truncate = 232 (case 2)
232.50000000000 => after rounding and truncate = 232 (case 2)
Run Code Online (Sandbox Code Playgroud) 我想知道是否可以让编译器为代码发出警告/错误,如下所示:
注意:
1.是的,这是糟糕的编程风格,我们应该避免这种情况 - 但我们正在处理遗留代码,并希望编译器可以帮助我们识别这些情况.)
2.我更喜欢编译器选项(VC++)来禁用或启用对象切片(如果有的话).
class Base{};
class Derived: public Base{};
void Func(Base)
{
}
//void Func(Derived)
//{
//
//}
//main
Func(Derived());
Run Code Online (Sandbox Code Playgroud)
在这里,如果我注释掉第二个函数,第一个函数将被调用 - 而编译器(VC++和Gcc)对此感觉很舒服.
它是C++标准吗?并且我可以问编译器(VC++)在遇到这样的代码时给我一个警告吗?
非常感谢!!!
编辑:
非常感谢你的帮助!
我找不到一个编译器选项来给出错误/警告 - 我甚至在MSDN论坛上发布了这个VC++编译器顾问没有回答.所以我担心gcc和vc ++都没有实现这个功能.
因此,添加构造函数将派生类作为参数将是目前最好的解决方案.
编辑
我已经向MS提交了一个feedbak,希望他们能尽快修复它:
https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=421579
-Baiyan
我有一个带有递归parent_id的自引用MySQL表:
CREATE TABLE `recursive` (
`id` int(11) NOT NULL auto_increment,
`parent_id` int(11) default NULL,
`name` varchar(100) NOT NULL,
PRIMARY KEY (`id`),
KEY `data_categorysource_parent_id` (`parent_id`),
CONSTRAINT `parent_id_refs_id_627b4293`
FOREIGN KEY (`parent_id`) REFERENCES `data_categorysource` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
Run Code Online (Sandbox Code Playgroud)
在测试期间,我想清空它但TRUNCATE失败:
TRUNCATE `recursive`
/* SQL Error: Cannot delete or update a parent row: a foreign key
constraint fails...
Run Code Online (Sandbox Code Playgroud)
我目前必须手动删除所有记录,从树的底部开始向上工作.即使是小树也会变得繁重.
有一个简单的方法吗?我不能DROP在表中重新创建它,因为其他表引用它(我已经截断了那些,所以那里应该没有数据完整性问题).
您可以使用printf字段宽度说明符截断字符串:
printf("%.5s", "abcdefgh");
> abcde
Run Code Online (Sandbox Code Playgroud)
遗憾的是它不换号(更换工作d用x是一样的):
printf("%2d", 1234); // for 34
printf("%.2d", 1234); // for 34
printf("%-2d", 1234); // for 12
printf("%-.2d", 1234); // for 12
> 1234
Run Code Online (Sandbox Code Playgroud)
是否有一种简单/平凡的方式来指定要打印的位数,即使它意味着截断数字?
MSDN明确表示不会发生这种不必要的限制.(是的,它可以通过创建字符串等来完成,但我希望有一个"printf技巧"或聪明的kludge.)
(我在MySql中试过这个)
我相信它们在语义上是等价的.为什么不识别这个微不足道的案例并加快速度呢?