Heim  >  Artikel  >  php教程  >  Thinkphp join 连接查询,thinkphpjoin

Thinkphp join 连接查询,thinkphpjoin

WBOY
WBOYOriginal
2016-06-13 08:45:381606Durchsuche

Thinkphp join 连接查询,thinkphpjoin

<span> 1</span> <span>public</span> <span>function</span><span> test ( )
</span><span> 2</span> <span>        {
</span><span> 3</span>             <span>$User</span> = M('authlist'<span>);
</span><span> 4</span>             <span>$rs</span> = <span>$User</span>-><span>join</span>('left join wifi_shop  on wifi_authlist.shopid = wifi_shop.id')->field('
<span> 5</span> <span>            wifi_authlist.id,
</span><span> 6</span> <span>            wifi_authlist.shopid,
</span><span> 7</span> <span>            wifi_authlist.routeid,
</span><span> 8</span> <span>            wifi_authlist.mac,
</span><span> 9</span> <span>            wifi_authlist.over_time,
</span><span>10</span> <span>            wifi_shop.id,
</span><span>11</span> <span>            wifi_shop.shopname,
</span><span>12</span> <span>            wifi_shop.pid,
</span><span>13</span> <span>            wifi_shop.trade,
</span><span>14</span> <span>            wifi_shop.province,
</span><span>15</span> <span>            wifi_shop.city,
</span><span>16</span> <span>            wifi_shop.area,
</span><span>17</span> <span>            count(wifi_authlist.mac) as times 
</span><span>18</span>             ')->where('wifi_shop.pid = %s',3)->group('wifi_authlist.mac')->order('over_time')->limit($Page->firstRow.','.$Page->listRows)->select()<span>;
</span><span>19</span>             dump(<span>$rs</span><span>);
</span><span>20</span>         }

我这里查询的是 wifi_shop 跟 wifi_authlist 表,连接条件是

wifi_authlist.shopid = wifi_shop.id

一般要注意的是数据表包含前缀, 所以再join里 要加上前缀

 三个表连接再加一个join就行

<span> 1</span> <span>$rs</span> = <span>$User</span>-><span>join</span>('left join wifi_shop  on wifi_authlist.shopid = wifi_shop.id')-><span>join</span>('left join wifi_phonelist on wifi_authlist.mac = wifi_phonelist.mac')->field('
<span> 2</span> <span>            wifi_authlist.id,
</span><span> 3</span> <span>            wifi_authlist.shopid,
</span><span> 4</span> <span>            wifi_authlist.routeid,
</span><span> 5</span> <span>            wifi_authlist.mac,
</span><span> 6</span> <span>            wifi_authlist.over_time,
</span><span> 7</span> <span>            wifi_authlist.agent,
</span><span> 8</span> <span>            wifi_shop.id,
</span><span> 9</span> <span>            wifi_shop.shopname,
</span><span>10</span> <span>            wifi_shop.pid,
</span><span>11</span> <span>            wifi_shop.trade,
</span><span>12</span> <span>            wifi_shop.province,
</span><span>13</span> <span>            wifi_shop.city,
</span><span>14</span> <span>            wifi_shop.area,
</span><span>15</span> <span>            wifi_phonelist.mac,
</span><span>16</span> <span>            wifi_phonelist.phone,
</span><span>17</span> <span>            count(wifi_authlist.mac) as times 
</span><span>18</span>             ')->where('wifi_shop.pid = %s',<span>$pid</span>)->group('wifi_authlist.mac')->order('over_time')->limit(<span>$Page</span>->firstRow.','.<span>$Page</span>->listRows)->select();

 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn