mysql - phpmyadmin 中的多个查询 - 使用坐标、斜率、截距、角度等的距离
问题描述
我有大约 500 个 .csv 格式的 excel 表,其中包含为我的实验捕获的数据,其中包含以下列。
现在我需要使用这些数据计算以下参数。我已经在 excel 中完成了这些,但是对每个 excel 重复多次这样做很困难,所以我想在 PhpmyAdmin 中编写一个 SQL 查询会有所帮助。
- 最后输入的字符 - 需要从“CharSq”列中捕获最后一个字符
- 斜率(在 J 列中)=(B3-B2)/(A3-A2)
- 截距(在 K 列中)=B2-(A2*(J3))
- 角度(度数)=MOD(DEGREES(ATAN2((A3-A2),(B3-B2))), 360) -
- 难度指数=LOG(((E1/7.1)+1),2)
- 速度值长度(如果速度值长度>3,则标记为1,否则标记为0) = =IF(LEN(D3) >= 3, "1","0")
- 顺序错误(如果 I3=I2,则标记搜索时间,否则标记实际时间)=IF(I3=I2,"搜索时间","实际时间")
- 将字符标记为 (1,2,3) = =IF(I2="A",1, IF(I2="B",2, IF(I2="C",3, 0)))
我从这个 SQL 查询开始 SELECT id, type, charSq, substr(charSq,-1,1) AS TypedChar, xCoordinate, yCoordinate, angle, distance, timestamp, speed FROM table 1
WHERE 1
其余参数需要帮助。谢谢。
注意 - 我将在 phpMyAdmin SQL 中运行它
解决方案
create table test.Table10 select mm.myid,mm.id,mm.type1 as GESTURE,MM.CHARSQ,MM.TYPE2 as TYPEDCHAR,MM.MYCHAR,MM.XCOR,MM.YCOR,MM.SLOPE,l4-(l2*(SLOPE)) as Intercept,
if (ANGLE1<0, (ANGLE1+360) , ANGLE1 ) as ANGLE0,MM.DISTANCE,MM.DW,MM.INDDIFF,MM.TIME1,MM.SPEED,MM.SPDFILT,MM.TIMETYPE from (select c11.*,((YCOR-l4)/(XCOR-l2)) as SLOPE,MOD(DEGREES (ATAN2((YCOR-l4),(XCOR-l2))), 360) as ANGLE1,(YCOR-l4)/(XCOR-l2) ATT,LOG2(((DW)+1)) as INDDIFF,
if(TYPE2=(LAG(TYPE2) OVER (
PARTITION BY MYID
ORDER BY ID)),"Search Time","Actual Time") as TIMETYPE,case when type2="A" then "1"
when type2="B" then 2
when type2="C" then 3
else 0
end as MYCHAR from (SELECT b.*,LEAD(XCOR) OVER (
PARTITION BY charsq) l1,LAG(XCOR) OVER (
PARTITION BY MYID
ORDER BY ID) l2,LEAD(YCOR) OVER (
PARTITION BY MYID) l3,LAG(YCOR) OVER (
PARTITION BY MYID
ORDER BY ID) l4,distance/7.1 as DW,IF(length(speed) >= 3, "1","0") as SPDFILT,RIGHT(charSq,1) as TYPE2 FROM test.table2 b) c11) mm
推荐阅读
- amazon-web-services - Serverless 订阅其他区域的 SNS
- javascript - 如何返回?
- java - 如何使用 FCM 向所有用户发送通知?
- r - 重命名不同数据框中的多列组合成一个对象
- python - 在 Keras 中是否可以再次在以下自定义层中使用神经网络的输入?
- excel - 遍历 Excel WORKBOOK 的文件系统,并使用 Apple Script 操作每个 WORKSHEET!(苹果系统)
- go - 通道关闭后如何关闭 goroutines
- flutter - 在 Flutter 中使用蓝牙打印机打印图像
- svg - Firefox:动画 SVG 半径仅适用于百分比
- eclipse - 如何找到导致修改代码某些部分的 SVN 分支或提交