请告诉我。有必要根据表前缀和从表中提取的数据,对数据库进行选择,在数据库中形成表的名称(从中生成样本)。
表格:站点、聊天室和聊天室id(带有通信的表格)。
我需要得到这个网站的id和未读人数从这个网站。我这样做:
SELECT
s.id AS id,
(SELECT
COUNT(*)
FROM
HOW TO ET TABLE NAME? AS ch
WHERE
ch.chat_id = c.id AND
status = 0 AND
type = 'CLIENT'
) AS unread
FROM
site AS s
LEFT JOIN chat AS c ON
c.site_id = s.id AND
c.operator_id = s.user_id
WHERE
s.user_id = 1;
表的名称由站点的前缀和id组成-chat_1。
也许这不对-不要扔拖鞋)
1条答案
按热度按时间zphenhs41#
表的名称在sql级别不可参数化。只能参数化文本值。
在您的例子中,需要根据参数值使用不同的表。要做到这一点,您需要用编程语言(java、php、python等)将sql构建为一个字符串,将各个部分连接起来,以组装表名和查询的其余部分。
你没有别的办法了。