在使用php session进行数据查询时主要有3中方法。第一种是使用函数【mysql_connect()】建立和MYSQL数据库的连接。mysql_connect()是用来建立和MYSQL数据库的连接,一共有5个参数,一般情况下只使用前3个参数,分别是MySQL服务器地址、用户名以及密码。第二种是使用函数【mysql_select_db()】指定要操作的数据库。mysql_select_db()是用来指定要操作的数据库。要是需要操作的数据库还没有创建,则需要创建数据库,然后再创建数据库中的表。第三种是使用函数【mysql_query()】查询指令。mysql_query()是查询指令的专用函数,所有的SQL语句都通过它执行,并返回结果集。一般情况下这三种方法是最适用的,希望可以解决你的问题。
创新互联从2013年创立,先为同安等服务建站,同安等地企业,进行企业商务咨询服务。为同安企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
如果是mysql里面两个不同的数据库,应该是可以直接使用 [数据库名称].[表名]来关联的。TP指定的数据库,是因为他要缓存这个数据库的表字段等。
试试看行不行,我测试通过: SELECT a.*,b.* FROM table1 a LEFT JOIN db2.table2 b ON a.id=b.id
参考示例如下,并注意count的用法,不要乱用。是求次数?还是求和?根据需求操作。
-- cts:每一行pid出现的次数
SELECT FLOOR((CHAR_LENGTH(cart_data)-CHAR_LENGTH(REPLACE(cart_data,"pid","")))/3)'cts' from tbs;
public function fun1($uid)
{
$list = db('table')-where(['rank_id'=$uid])-select();
if(empty($list))return [];
else{
$arr = [];
foreach ($list as $item)
{
$arr = array_merge($arr,$this-fun1($item['id']));
}
return $arr;
}
}
public function fun2($uid,$arr=[])
{
$list = db('table')-where(['rank_id'=$uid])-select();
if(empty($list))return $arr;
else{
$arr = array_merge($arr,$list);
foreach ($list as $item)
{
$arr = $this-fun2($item['id'],$arr);
}
return $arr;
}
}
两个方法,你测试下可用不。
这种情况只能写SQL语句,不能用框架中带的。
select a.*,b.* from tb_hotel_info as a left join tb_house_info as b on a.hotel_id=b.id where a.price order by desc
mysql_list_tables 在php5应该支持的,再说,向下兼容的啊帮助文档:例 1397. mysql_list_tables() 例子/b?php
$dbname = 'mysql_dbname';
if (!mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) {
print 'Could not connect to mysql';
exit;
}
$result = mysql_list_tables($dbname);
if (!$result) {
print "DB Error, could not list tables\n";
print 'MySQL Error: ' . mysql_error();
exit;
}
while ($row = mysql_fetch_row($result)) {
print "Table: $row[0]\n";
}
mysql_free_result($result);
?