我想在一个列表中有两个列表:
x = [1,2]
y = [3,4]
Run Code Online (Sandbox Code Playgroud)
我需要它们像:
z = [[1,2][3,4]]
Run Code Online (Sandbox Code Playgroud)
但我不知道该怎么做.非常感谢您的考虑和帮助.
我有两个清单:
list1 = ['r', '8', 'w', 'm', 'f', 'c', 'd',...]
list2 = ['AA', 'AB', 'AC', 'AD', 'AE', 'AF',...]
Run Code Online (Sandbox Code Playgroud)
我希望将它们都放入字典中,以便:
{'r':'AA', '8':'AB', 'w':'AC', 'm':'AD',...}
Run Code Online (Sandbox Code Playgroud)
我尝试过使用:
dictionary = dict(zip(list1, list2))
Run Code Online (Sandbox Code Playgroud)
但是,我相信这个函数会做一些奇怪的排序,因为如果我打印"dictionary",我会得到以下输出:
{'1': 'BE', '0': 'EB', '3': 'CE', '2': 'FE', '5': 'DB',...}
Run Code Online (Sandbox Code Playgroud)
为什么会这样,以及如何产生所需的输出?
我有3张桌子
我需要根据传递的参数将TableA连接到TableB或TableC.即
select * from
TableA A
join (TableB on <Joining Condition> / TableC on <joining condition> )
Run Code Online (Sandbox Code Playgroud)
我试过以下查询
select * from
TableA A
join (
case when paramB<>'' then TableB on <Joining Condition>
case when paramC<>'' then TableC on <joining condition>
)
Run Code Online (Sandbox Code Playgroud)
但是,这会给出语法错误.任何人都可以帮忙吗?
解:
create table #temp (<columns>)
if paramB<>''
begin
select * from
TableA A
join TableB on <Joining Condition>
end
else if paramB<>''
begin
select * from
TableA A
join TableC on <Joining Condition> …
Run Code Online (Sandbox Code Playgroud) 如何使用多列作为键来计算两个Dataframe的连接?例如DF1,DF2是两个dataFrame.
这是我们计算连接的方式,
JoinDF = DF1.join(DF2, DF1("column1") === DF2("column11") && DF1("column2") === DF2("column22"), "outer")
Run Code Online (Sandbox Code Playgroud)
但我的问题是如果它们存储在如下数组中,如何访问多列:
DF1KeyArray=Array{column1,column2}
DF2KeyArray=Array{column11,column22}
Run Code Online (Sandbox Code Playgroud)
那么用这种方法计算连接是不可能的
JoinDF = DF1.join(DF2, DF1(DF1KeyArray)=== DF2(DF2KeyArray), "outer")
Run Code Online (Sandbox Code Playgroud)
在这种情况下错误是:
<console>:128: error: type mismatch;
found : Array[String]
required: String
Run Code Online (Sandbox Code Playgroud)
有没有办法访问多个列作为存储在数组中的键来计算连接?
我有以下查询来返回客户使用的作业(访问)的数量以及他/她使用的不同的兽医.
SELECT
customer.users_id AS CustID,
COUNT(VisitID) AS Jobs,
COUNT(DISTINCT VetID) AS Resources
FROM customer
LEFT JOIN visit ON customer.users_id = visit.CustID
GROUP BY customer.users_id
Run Code Online (Sandbox Code Playgroud)
当我添加一个WHERE子句来计算只有未重新计划或已取消的访问时,我的查询看起来像这样.
SELECT
customer.users_id AS CustID,
COUNT(VisitID) AS Jobs,
COUNT(DISTINCT VetID) AS Resources
FROM customer LEFT JOIN visit ON customer.users_id = visit.CustID
WHERE visit.Status != 'Cancelled' AND visit.Status != 'ReScheduled'
GROUP BY customer.users_id
Run Code Online (Sandbox Code Playgroud)
但是,在这种情况下,我只会得到没有取消或重新安排访问的客户,虽然我正在为客户使用左连接.
我如何适应WHERE子句呢?
我想打印这样的声明
print "$string -> $string1 ( join (",", @array) )\n";
Run Code Online (Sandbox Code Playgroud)
但是我发现我无法打印join函数的结果,但是join像普通单词一样打印。例如我的$ string = a,$ string1 = b和@array = cde给我如下结果
a -> b (join (",",@array) )
Run Code Online (Sandbox Code Playgroud)
我想要的实际结果是这样的。
a -> b (c,d,e)
Run Code Online (Sandbox Code Playgroud)
任何解决方案我都能得到我想要的结果吗?
我正在尝试将此查询与另一个查询相关联,但这将需要立即执行所有操作而不留下此语句.
MYSQL
"SELECT pid FROM posts WHERE uid = ? && state = 'a' ORDER BY time DESC LIMIT 5"
Run Code Online (Sandbox Code Playgroud)
使用PHP的同时.
while($row = $get->fetch()){
echo $row['pid'].' ,';
}
Run Code Online (Sandbox Code Playgroud)
我得到的东西是:2,5,8,31,40
有没有办法在不退出查询的情况下获得相同的值?
类似SELECT的返回值
所以我能做到:$row['returned_values'];
得到:"2,5,8,31,40"
我有一个SQL查询,我需要在其中有多个条件,其中一个表中的记录连接在结果中.
具体来说,如果它的外键值与另一个表中的条目的id相同,我需要包含一个记录 - 如果外键值为NULL,则还需要.
所以,这就是我现在所拥有的......
SELECT
table1.value1,
table1.value2,
table2.value1
FROM
dbo.table1 table1
INNER JOIN dbo.table2 table2
ON table1.table2_id = table2.id
WHERE table1.value1 = 'blah'
Run Code Online (Sandbox Code Playgroud)
哪个工作正常.但是,我还需要返回table1中的所有值,其中table1.table2_id为NULL.
到目前为止我已经尝试过了......
SELECT
table1.value1,
table1.value2,
table2.value1
FROM
dbo.table1 table1
INNER JOIN dbo.table2 table2
ON table1.table2_id = table2.id OR table1.table2_id is NULL
WHERE table1.value1 = 'blah'
Run Code Online (Sandbox Code Playgroud)
它只是将查询发送到无限循环.
有什么建议?
提前致谢.
我试着查看,但不知道该找什么...
我需要"表连接"N个向量,意思是,创建一个矩阵,其中每个输入向量都有一行,每个可能的条目都有一列.
还有一个翻译向量可以轻松访问哪个列负责哪个条目
例如
a = [3, 2, 4, 9]
b = [3, 1, 5, 9]
c = [2, 4, 9, 6]
Run Code Online (Sandbox Code Playgroud)
然后
join(a, b, c) =
[
3; 2; nan; 4; nan; 9; nan,
3; nan; 1; nan; 5; 9; nan,
nan; 2; nan; 4; nan; 9; 6,
]
Run Code Online (Sandbox Code Playgroud)
用翻译矢量
[3,2,1,4,5,9,6]
Run Code Online (Sandbox Code Playgroud)
所以如果我找到关于第i列的内容,我可以很容易地知道该列代表什么.
我更喜欢连接操作能够接收n个向量(它们可以具有相同的长度),但是2也可以.
此外,第二眼,这些数据表示在某些方面似乎有点多余.也许有一种更好的方式来表示"连接矩阵"
谢谢
我试图在Visual Studio中使用3个表进行内部联接,但是我收到错误.当我只使用2个表进行内连接时,它可以工作.
这是我的3个表的代码:
"select b.bidID, b.userID, u.userFirstName, u.userLastName, c.clientName, b.productName, b.openingDate, b.status
from Bid b
inner join Client c on b.clientID = c.clientID
inner join User u on b.userID = u.userID
where b.clientID = '" + cId + "' ";
Run Code Online (Sandbox Code Playgroud)
有2个表:
"select b.bidID, b.userID, c.clientName, b.productName, b.openingDate, b.status
from Bid b
inner join Client c on b.clientID = c.clientID
where b.clientID = '" + cId + "' ";
Run Code Online (Sandbox Code Playgroud)