Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当找不到密钥id时,MySQL不返回结果_Mysql_Key_Inner Join - Fatal编程技术网

当找不到密钥id时,MySQL不返回结果

当找不到密钥id时,MySQL不返回结果,mysql,key,inner-join,Mysql,Key,Inner Join,我有几行mySQL代码来显示一组与两个表链接的结果。由键id关联。当没有键与另一个表匹配时会出现问题-没有结果显示。所以我的想法是我想在mySQL中有一些条件,比如if(id='999','General','concat(没有内部连接的东西))。请查看我的代码: MySQL SELECT if( log_db.log_bid = '999', 'General', CONCAT( 'B', bk_rtype, '-', LPAD( bk_id, 5, '0' ) ) ) AS booking

我有几行mySQL代码来显示一组与两个表链接的结果。由键id关联。当没有键与另一个表匹配时会出现问题-没有结果显示。所以我的想法是我想在mySQL中有一些条件,比如if(id='999','General','concat(没有内部连接的东西))。请查看我的代码:

MySQL

SELECT if( log_db.log_bid = '999', 'General', 
CONCAT( 'B', bk_rtype, '-', LPAD( bk_id, 5, '0' ) ) ) AS booking_no,
 booking_db.bk_flg1 AS flight
FROM log_db
INNER JOIN booking_db ON booking_db.bk_id = log_db.log_bid
WHERE log_db.log_stts = '1'
ORDER BY log_db.log_id DESC

根据我的密码。我希望如果log_bid='999'预订号会返回'General',但不会返回。请建议。

听起来您想要这样的左外连接

选择log\u db.log\u bid,
如果booking_db.bk_id为空,则为“General”
否则CONCAT('B',bk_rtype',-',LPAD(bk_id,5,'0')以预订号结尾,
预订db.bk航班1作为航班
从log_db
左外接预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订预订
其中log\u db.log\u stts='1'
按日志的顺序\u db.log\u id DESC

这将为您提供第一个表中与where条件匹配的所有记录,这些记录与第二个表中的记录(如果未找到匹配项,则为空记录)。

根据定义,
内部连接。。。ON
要求两个表中都匹配。我不明白您想做什么,但听起来您可能想使用常规联接,因此如果一个表没有匹配的记录,您仍然会得到一个结果,然后可能使用来处理
null
值。