<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Terrysco&#039;s Blog &#187; db</title>
	<atom:link href="http://www.terrysco.com/node/tag/db/feed" rel="self" type="application/rss+xml" />
	<link>http://www.terrysco.com</link>
	<description>仅关注于互联网行业， Linux平台开发。</description>
	<lastBuildDate>Sat, 05 Nov 2011 21:24:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>drupal 高级sql查询</title>
		<link>http://www.terrysco.com/node/drupal-db-query.html</link>
		<comments>http://www.terrysco.com/node/drupal-db-query.html#comments</comments>
		<pubDate>Fri, 03 Apr 2009 17:28:29 +0000</pubDate>
		<dc:creator>terrysco</dc:creator>
				<category><![CDATA[CMS/FrameWork]]></category>
		<category><![CDATA[db]]></category>
		<category><![CDATA[drupal]]></category>

		<guid isPermaLink="false">http://www.anyliv.com/www.terrysco.com/?p=84</guid>
		<description><![CDATA[<p>参考taxonomy模块中查询术语节点的部分，其实可以写得更简单，不知道老外是故意写得很晦涩还是。。。。</p><p>if (count($tids) &#62; 0) {<br />&#160;&#160;&#160; $joins = '';<br />&#160;&#160;&#160; $wheres = '';<br />&#160;&#160;&#160; $args = array();<br />&#160;&#160;&#160; foreach ($tids as $index =&#62; $tid) {...</p>
]]></description>
			<content:encoded><![CDATA[<p>参考taxonomy模块中查询术语节点的部分，其实可以写得更简单，不知道老外是故意写得很晦涩还是。。。。</p>
<p>if (count($tids) &gt; 0) {<br />&nbsp;&nbsp;&nbsp; $joins = ”;<br />&nbsp;&nbsp;&nbsp; $wheres = ”;<br />&nbsp;&nbsp;&nbsp; $args = array();<br />&nbsp;&nbsp;&nbsp; foreach ($tids as $index =&gt; $tid) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $joins .= &#8216; INNER JOIN {term_node} tn&#8217;. $index .&#8217; USING(nid)&#8217;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $placeholders = implode(&#8216;,&#8217;, array_fill(0, count($tids), &#8216;%d&#8217;));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $wheres .= &#8216; AND tn&#8217;. $index .&#8217;.tid IN (&#8216;. $placeholders .&#8217;)';<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $args = array_merge($args, $tids);<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; $sql = &#8216;SELECT DISTINCT(n.nid), n.sticky, n.title, n.created FROM {node} n &#8216;. $joins .&#8217; WHERE n.status = 1 &#8216;. $wheres;<br />&nbsp;&nbsp;&nbsp; $result = db_query(db_rewrite_sql($sql), $args);</p>
<p>// 之前这里写成了 db_query(db_rewrite_sql($sql, $args)); 好久才发现问题，汗一个。</p>
<p>&nbsp;&nbsp;&nbsp; while ($product = db_fetch_object($result)) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // 如果用户已经在改产品发布了该驱动或者说明书，跳过不进行筛选。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($product-&gt;nid == $form_values['pid']) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; continue;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $rows[$product-&gt;nid] = check_plain($product-&gt;title);<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; variable_set(&#8216;product_filter&#8217;, $rows);<br />&nbsp; }</p>
]]></content:encoded>
			<wfw:commentRss>http://www.terrysco.com/node/drupal-db-query.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

