草庐IT

Semi-Join

全部标签

mysql - Cakephp 的 SQL JOIN 查询

我有2个表,一个叫做items,另一个叫做sliders。我想调用sliders.item_id=items.id的所有列,并且两者都以items.published=1和sliders.published=1的形式发布。但我也想调用NULL的sliders.item_id。所以基本上就像一个右连接,我得到了所有与约束匹配的相关记录,但也得到了slider表上与项目表不对应的记录。简而言之,重点是:我想获得属于项目的所有slider(sliders.item_id=items.id)AND(sliders.published=1ANDitems.published=1)但也包含item

mysql - 跨具有 NULL 值的多个表在 MySQL 中进行 LEFT JOIN

我有以下数据表结构表:用户用户名|用户名1|乔2|玛丽表:用户组用户名|群组编号1|1个1|2表:组组号|团队名字1|公司12|公司2表:角色角色编号|角色名称1|行政人员2|用户表:用户角色用户名|角色编号1|1个2|1如您所见,用户#2不属于任何组。角色和组是可选的,迫使我离开关节,但是当我运行如下查询时`SELECTa.user_id,a.user_nameGROUP_CONCAT(r.role_name)ASrole_names,GROUP_CONCAT(g.group_name)ASgroup_namesFROMuseraLEFTJOINrole_mapmONa.user_i

MySQL join 即使应该返回结果也不返回结果

我有一个看似简单的问题。我正在将一个ID列表与第二个表中的另一个ID列表进行匹配。以下查询执行良好并返回结果:select*fromdataTablewhereid=3888;select*frommoreIDswheremmid=3888;然而,连接语句不返回任何结果。select*fromdataTableinnerjoinmoreIDsondataTable.id=moreIDs.mmID;知道为什么我没有从连接中获得任何结果吗? 最佳答案 正如您在评论中了解到的那样,您的问题与数据类型有关。下面的fiddle展示了一些测试:

mysql - SQL JOIN 第一行与 CONCAT_WS

我只想从我的用户表中引用第一个结果,但我收到以下错误#1064-YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'1CONCAT_WS('',employeeFirstName,employeeLastName)AScourseAddedFROMvwt_user'atline6我的SQL如下CREATEORREPLACEVIEWvwt_coursesASSELECTtw_tblcourse.*,tw_tblprovid

php - 当 left join 返回 null 时,'where' 条件失败

当leftjoin失败时,由于vlu.status=1查询不会返回任何内容。即使左连接失败,我也想要结果。如果我删除vlu.status=1然后它返回正确的结果,但我必须使用vlu.status=1当左连接没有失败时。selectvb.first_name,vb.last_name,DATE_FORMAT(vb.created_date,'%m-%d-%Y')asCreated_On,concat(la.first_name,'',la.last_name)asLoan_Agent,vl.loan_number,count(vs.id)asNum_Deliveriesfromvid_b

php - Yii2:是否可以使用 JOIN 同时查询 2 个数据库?

我在Yii2上有项目。我有2个数据库。我需要像join一样执行命令SELECT*FROM`table1`LEFTJOIN`table2`ON`table1`.`id`=`table2`.`id`;..其中table1来自db1而table2来自db2。注意:db2在另一台服务器上。'db1'=>['class'=>'yii\db\Connection','dsn'=>'mysql:host=localhost;dbname=db1','username'=>'...','password'=>'...','charset'=>'utf8',],'db2'=>['class'=>'yii

mysql - 如何在不授予 INSERT 权限的情况下在 dplyr 中创建 left_join(..., copy=TRUE)

我们需要将一个数据库表与一个excel文件的内容连接起来。使用dplyrleft_join很简单,但需要在连接中设置copy=TRUE,因为数据不是来自同一源.这反过来意味着代码将仅在数据库用户具有INSERT权限时运行,以便left_join可以在/tmp文件夹中创建临时表。有没有办法在不授予INSERT权限的情况下执行copy=TRUEleft_join?访问数据进行分析的数据库用户实际上应该只是一个读者。如果未授予插入权限,则会出现如下错误:Errorin.local(conn,statement,...):couldnotrunstatement:INSERTcommandde

mysql - 优先执行 JOIN 关键字中的 WHERE 子句

我想知道,当我在指令join之后使用where子句时,会发生什么?其实我想知道的是执行的优先级。例如,考虑以下代码:select*fromtablename1t1innerjointablename2t2ont1.id=t2.idwhereid='10'那么上面的代码首先发生了什么?SQL将选择所有id为10的行,然后运行​​join关键字?还是join关键字先运行,然后是where子句? 最佳答案 要回答您的问题,Join首先运行,但如果您想过滤,请尝试此查询select*from(select*fromtablename1whe

php - MySQL - 如何使用(LEFT)JOIN 通过一个表将两个表连接在一起?

一些背景和目标我用HTML/PHP为我网站上的某个人整理了一个链接列表。它允许多项选择(使用属性“multiple”进行选择),它基本上看起来像这样:╔══════════╗║Facebook║╠══════════╣║Google+║╠══════════╣║Twitter║╚══════════╝选定的项目将保存到MySQL数据库中,但这还不是全部。保存选择后我想回去看看,选择了哪些选择。这意味着我必须使用我选择的选项在PHP中生成这个select元素。数据库结构最后编辑于6.24.201513:23(芬兰时间)在MySQL中,我有以下表格:链接包括链接特定信息(链接地址、颜色等)

mysql - Php Mysql Join 具有多个条件和空记录的两个表

我已尝试从2个表中获取记录,但在我的第一个表为ttreply时未显示所需的输出另一个表是ttreplycount,其中存储的计数如下:我试图获取值,但它没有获取记录,因为我希望我的mysql查询如下:SELECTr.id,r.userid,r.`reply`,coalesce(x.votes,0)asVotesFROM`ttreply`rleftjoin(SELECTsum(votes)asVotesfrom`ttreplyvotes`)xONr.`post_id`=2它向我展示了这样的输出:我需要的是这样的:iduseridreplyVotes23Testing2ndreply-23