我有2个MySQL表格如下:
用户表( let angle = CGFloat(M_PI_2)
let tr = CGAffineTransform.identity.rotated(by: angle)
ImageView.transform = tr
是电台主键)
st_id
电台表
uid fname lname company_name email phone st_id
=====================================================
9 xxx yyyy zzzz x@y.com xxx 5,6
现在使用一个 SQL查询我想从st_id uid st_name st_lat st_long lg_id
============================================
5 9 xxx 24.25 24.95 8,9,10
6 9 yyy 23.25 23.95 11,12,12
表中获取所有数据,并从users
表获取st_name
匹配的所有station
与st_id
这意味着它应该返回uid
表中的所有数据以及来自users
表的所有st_name
station
= 9
我当前的SQL查询:
uid
注意:在$getData = mysqli_query($conn, "SELECT users.uid, users.company_name, users.fname, users.lname, users.phone, users.email, station.st_id, station.st_name, logger.lg_name FROM users
LEFT JOIN station ON station.st_id = users.st_id
LEFT JOIN logger ON logger.lg_id = station.lg_id
LEFT JOIN channel ON channel.ch_id = logger.ch_id
WHERE users.power != 'admin' ");
表中,我将station
值存储为数组。喜欢:
st_id
更新代码:
$st_id_value = implode(',', $st_id_value);
返回
$getData = mysqli_query($conn, "SELECT users.uid, users.company_name, users.fname, users.lname, users.phone, users.email, station.st_id, station.st_name, logger.lg_name
FROM users LEFT JOIN station
ON FIND_IN_SET(station.st_id, users.st_id)
LEFT JOIN logger ON logger.lg_id = station.lg_id
LEFT JOIN channel ON channel.ch_id = logger.ch_id
WHERE users.power != 'admin' AND station.uid=$uid");
$fetchData = mysqli_fetch_assoc($getData) ;
echo '<pre>';
print_r($fetchData);
echo '</pre>';
答案 0 :(得分:1)
您可以尝试此查询。
SELECT users.uid, users.company_name, users.fname, users.lname, users.phone, users.email, station.st_id, station.st_name, logger.lg_name
FROM users INNER JOIN station
ON FIND_IN_SET(station.st_id, users.st_id)
LEFT JOIN logger ON logger.lg_id = station.lg_id
LEFT JOIN channel ON channel.ch_id = logger.ch_id
WHERE users.power != 'admin' AND users.uid=9
您可以在这里用您想要的uid
替换9。
<强>更新强>
$getData = mysqli_query($conn, "SELECT users.uid, users.company_name, users.fname, users.lname, users.phone, users.email, station.st_id, station.st_name, logger.lg_name
FROM users LEFT JOIN station
ON FIND_IN_SET(station.st_id, users.st_id)
LEFT JOIN logger ON logger.lg_id = station.lg_id
LEFT JOIN channel ON channel.ch_id = logger.ch_id
WHERE users.power != 'admin' AND station.uid=$uid");
while($fetchData = mysqli_fetch_assoc($getData))
{
echo '<pre>';
print_r($fetchData);
echo '</pre>';
}