小编cro*_*nos的帖子

如何在 MySQL 中创建查询以根据日期和独特字段减去连续行?

基于SQL减去基于日期和另一列的两行我有一个好主意,但我需要别的东西。

我有下表(库存):

animal   date         quantity

dog      2015-01-01   400
cat      2015-01-01   300
dog      2015-01-02   402
rabbit   2015-01-01   500
cat      2015-01-02   304
rabbit   2015-01-02   508
rabbit   2015-01-03   524
rabbit   2015-01-04   556
rabbit   2015-01-05   620
rabbit   2015-01-06   748
Run Code Online (Sandbox Code Playgroud)

通过运行此查询:

SELECT a.animal, a.Date
AS actual_date, past_date.Date
AS past_date, (a.quantity - past_date.quantity)
AS quantity_diff
FROM inventory a
JOIN
(SELECT b.animal, b.date AS date1,
(SELECT MAX(c.date)
FROM inventory c
WHERE c.date < b.date AND c.animal = b.animal
GROUP BY c.animal)
AS date2 
FROM inventory …
Run Code Online (Sandbox Code Playgroud)

mysql

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

如何在Openssl中以十六进制生成输出?

最后,我可以使用"-a"开关获得base64格式的输出; 我可以使用任何十六进制开关吗?

echo '0: 63616e746765747468697332776f726b' | xxd -r | openssl enc -aes-128-ecb -a -K 00000000000000000000000000000000
Run Code Online (Sandbox Code Playgroud)

如果我运行该代码,我会得到这个:

N2+bVLU8fIS7ucFW1Qr/xwFD22PuZrDN/59pkXaAFR4=
Run Code Online (Sandbox Code Playgroud)

......不知怎的,它也是错的,因为它应该只是这样:

N2+bVLU8fIS7ucFW1Qr/xw==
Run Code Online (Sandbox Code Playgroud)

无论如何,我只需要能够提出这个输出:

376f 9b54 b53c 7c84 bbb9 c156 d50a ffc7
Run Code Online (Sandbox Code Playgroud)

encryption openssl aes

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

如何在php中从base64转换为十六进制?

我想用这个:

<?php
$string1 = 'V2h5IEkgY2FuJ3QgZG8gdGhpcyEhISEh';
echo base64_decode($string1);
?>
Run Code Online (Sandbox Code Playgroud)

此示例的输出应始终为 18 个字符!但有时这个输出小于18。

24(base64 字符)乘以 6(每个 base64 字符的位数)等于 144(位)除以 8(每个 ASCII 字符的位数)等于 18 个 ASCII 字符。

问题是输出以纯文本显示;并且某些字符甚至没有“文本表示”,并且该数据将丢失。下一个测试将显示有 41 个不同的 ASCII 字符没有可见输出。

<?php
for ($i = 0; $i <= 255; $i++) {
    $string2 = chr($i);
    echo $i . " = " . $string2 . "<br>";
}
?>
Run Code Online (Sandbox Code Playgroud)

我的计划是解码 base64 字符串,然后从 ASCII 输出中将其重新转换为十六进制。现在这是不可能的,因为这 41 个字符。

我也试过,base_convert但没有 base64 支持。

php

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

如何在PHP中随机排列列表的顺序

我有一个非重复数字列表; 我需要以随机的方式显示所有这些数字.来自http://www.w3schools.com/php/func_array_rand.asp我学到了一些没有运气的方法.如果我使用"array_rand",则所有输出必须按递增顺序排列; 所以我的最终输出将始终按顺序从1到10,没有随机性.

<!DOCTYPE html>
<html>
<body>

<?php
$a=array(1,2,3,4,5,6,7,8,9,10);
$random_keys=array_rand($a,10);
echo $a[$random_keys[0]]."<br>";
echo $a[$random_keys[1]]."<br>";
echo $a[$random_keys[2]]."<br>";
echo $a[$random_keys[3]]."<br>";
echo $a[$random_keys[4]]."<br>";
echo $a[$random_keys[5]]."<br>";
echo $a[$random_keys[6]]."<br>";
echo $a[$random_keys[7]]."<br>";
echo $a[$random_keys[8]]."<br>";
echo $a[$random_keys[9]]."<br>";
?>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

html php

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

如何在同一数据集的新列中添加列的先前行?

我有2列,使用此代码生成"x"和"y":

x = 1:8
y = c(2,7,1,3,5,4,1,2)
data = data.frame(x,y)
Run Code Online (Sandbox Code Playgroud)

它看起来像这样:

x y
1 2
2 7
3 1
4 3
5 5
6 4
7 1
8 2
Run Code Online (Sandbox Code Playgroud)

现在我想继续将所有先前的"y"行添加到"z"中.

x y z
1 2 2
2 7 9
3 1 10
4 3 13
5 5 18
6 4 22
7 1 23
8 2 25
Run Code Online (Sandbox Code Playgroud)

我没有运气就尝试了一切.

r

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

标签 统计

php ×2

aes ×1

encryption ×1

html ×1

mysql ×1

openssl ×1

r ×1