我有一个名为Country的班级.它有公共成员,'CountryName'和'States'.
我已经宣布了一份国家名单.
现在我想写一个函数接受一个新的'Country'并决定CountryList是否已经有'Country'.
我试着写一个像这样的函数
bool CheckCountry(Country c)
{
return CountryList.Exists(p => p.CountryName == c.Name
&& p.States.SequenceEqual(c.States));
}
Run Code Online (Sandbox Code Playgroud)
由于我想使用States的CountryName属性比较状态,我想修改我的函数,以便SequenceEqual基于状态的CountryName工作?
出什么问题了
public int Add(int? a, int? b)
{
return (a?.0 + b?.0);
}
Run Code Online (Sandbox Code Playgroud)
编译错误:无法隐式转换类型'int?' 'bool'
只是尝试以C#6.0的方式获得添加两个可空整数的味道.
我也知道其他方式(比如hasvalue等),但我正在试验这个新的运算符.
很抱歉提出这类问题.
但我很想知道一些好的网站,我可以有机会参加一些sql比赛.
我找到了1个 TroyK的T-SQL挑战赛
但它不是免费的.
我正在寻找一个免费的.
还有C#编程比赛.我发现的是Code Chef
我正在寻找更多.
此外,它应该适合任何年龄段!
编辑:
我喜欢Project Euler.这真好
还有一些TSQL编程挑战.Sql Server Central很好.但我正在寻找更多的TSql程序
提前致谢
谷歌搜索后,我发现索引搜索比扫描更好.
如何编写将导致搜索而不是扫描的查询.我试图在谷歌找到这个,但截至目前没有运气.
任何有解释的简单例子都将受到赞赏.
谢谢
所以我有一个基于REST的服务,托管在
http://localhost:35798/RestServiceImpl.svc/json/567
Run Code Online (Sandbox Code Playgroud)
如果我查询,我得到的结果如下:
{"JSONDataResult":"You requested product 567"}
Run Code Online (Sandbox Code Playgroud)
我需要将整个JSON数据存储到PostgreSQL表中:
CREATE TABLE "JsonTable"
(
"StoreJsonObject" json
)
Run Code Online (Sandbox Code Playgroud)
如果我想解析值字段,即"你请求的产品567",程序工作(这里我使用的是一个列类型为文本的不同表):
<jdbc:postgresql-data-source name="PostgreSQL_Data_Source" user="username" password="pwd" url="jdbc:postgresql://localhost:5432/TestDB" transactionIsolation="UNSPECIFIED" doc:name="PostgreSQL Data Source"/>
<jdbc:connector name="PostgreSQL_Connector" dataSource-ref="PostgreSQL_Data_Source" validateConnections="true" queryTimeout="-1" pollingFrequency="0" doc:name="Database">
<jdbc:query key="InsertRecord" value="INSERT INTO "AnotherJSonTable"("StoreJsonObject") VALUES (#[message.payload])"/>
</jdbc:connector>
<flow name="testRestFlow1" doc:name="testRestFlow1">
<http:inbound-endpoint exchange-pattern="request-response" address="http://localhost:8082/index.html" doc:name="HTTP"/>
<http:rest-service-component httpMethod="GET" serviceUrl="http://localhost:35798/RestServiceImpl.svc/json/567">
</http:rest-service-component>
<json:json-to-object-transformer returnClass="java.util.Map" doc:name="JSON to Object"/>
<expression-transformer expression="#[message.payload.JSONDataResult]" doc:name="Expression"/>
<jdbc:outbound-endpoint exchange-pattern="one-way" queryKey="InsertRecord" queryTimeout="-1" connector-ref="PostgreSQL_Connector" doc:name="Database"/>
</flow>
Run Code Online (Sandbox Code Playgroud)
但是如何存储整个JSON对象({"JSONDataResult":"你请求的产品567"}).
我需要在"表达式变换器"中进行哪些更改?
如果我做:
<jdbc:query key="InsertRecord" value="INSERT INTO "JsonTable"("StoreJsonObject") VALUES (#[message.payload])"/>
<expression-transformer expression="#[message.payload]" doc:name="Expression"/>
Run Code Online (Sandbox Code Playgroud)
我收到例外: …
我在面试中被问到一个问题
public int Add(int? a, int? b)
{
return a+b;
}
Run Code Online (Sandbox Code Playgroud)
null在一个地方传递.你怎么处理这个?
我说
if (a == null ) { //do something }
else { // do something }
Run Code Online (Sandbox Code Playgroud)
他没有说什么.
等待回复.
目前实施的是
MATCH (emp:Employee)
WHERE emp.name = 'Abc'
RETURN emp
Run Code Online (Sandbox Code Playgroud)
是否有可能有一个类似的条款,例如
MATCH (emp:Employee)
WHERE emp.name Like %'Abc'%
RETURN emp
Run Code Online (Sandbox Code Playgroud)
就像我们在SQL中的方式一样?
我有一张桌子
AGREEMENTID FeedbackDate DispositionCode CollectorId
0003SBML00151 2017-08-22 08:00:00.000 PTP 1
0004SBHL00705 2017-08-22 08:20:00.000 BPTP 1
0007SBML01987 2017-08-22 09:10:00.000 SET 1
0026MSS00108 2017-08-22 07:50:00.000 PTP 2
0026MSS00108 2017-08-22 10:30:00.000 NC 2
0026MSS00108 2017-08-22 10:30:10.000 DL 2
0026MSS00108 2017-08-22 15:47:00.000 CB 2
0026MSS00108 2017-08-22 19:52:00.000 BPTP 2
Run Code Online (Sandbox Code Playgroud)
最终的输出将是
收藏家1在8.00小时和8.20小时进行了两次处置.因此,对于8小时列,他的处理代码可用.他还在9点10分进行了一次处理,对于9小时的专栏,他的处理代码可用.同样对于收藏家2.
到目前为止我尝试过的
Declare @T table
(AGREEMENTID varchar(50),
FeedbackDate varchar(50),
DispositionCode varchar(10),
[CollectorId] varchar(100)
)
Insert into @T
SELECT '0003SBML00151','2017-08-22 08:00:00.000','PTP','1' union all
SELECT '0004SBHL00705','2017-08-22 08:20:00.000','BPTP','1' union all
SELECT '0007SBML01987','2017-08-22 09:10:00.000','BPTP','1' union all
SELECT '0026MSS00108','2017-08-21 …Run Code Online (Sandbox Code Playgroud) 我有一台机器,操作系统是Ubuntu,已经安装了PostgreSQL.还提供了凭据
User Name: somename
Password: somepassword
Run Code Online (Sandbox Code Playgroud)
基本上我在Windows 8环境下工作,安装PostgreSQL后,我们可以从Start charms中找到它

如何从Ubuntu做同样的事情?