如何使用WHERE(SELECT ....)

时间:2018-12-25 07:51:38

标签: mysql sql

我正在执行非常复杂的报告功能,其中包含许多条件,多个面板,

我在tbl_my_report中有一条记录

id    param_filter

101   FIND_IN_SET(t.owner_department,'0620510200,0621510200,0623510200')

查询:

SELECT * 
FROM tbl_abc t WHERE t.id = '1' AND 
      (SELECT mr.param_filter 
       FROM tbl_my_report mr WHERE mr.id = '101'
      )

如何将其用作有效条件字符串?

2 个答案:

答案 0 :(得分:2)

首先,您应该规范化数据,并摆脱header = self.treeWidget.header() header.setSectionResizeMode(QtWidgets.QHeaderView.ResizeToContents) header.setStretchLastSection(False) header.setSectionResizeMode(5, QtWidgets.QHeaderView.Stretch) 。因此,应该有一些部门表,如下所示:

FIND_IN_SET

有了此表,您可以将查询重构为:

id    | owner
'101' | '0620510200'
'101' | '0621510200'
'101' | '0623510200'

通常,应避免在数据库表中存储CSV或其他未规范化的数据,原因是它可能使查询变得困难。

答案 1 :(得分:0)

使用此:

@ECHO OFF
set arg=%1
set file=%arg:~1,-5%
ffmpeg -i "%file%.mp4" -i "%file%.jpg" -acodec copy -vcodec copy -map 0 -map 1:0 "%file%WIP.mp4"
move /Y "%file%WIP.mp4" "%file".mp4"