我基本上有两个名为images和的表users。该images表具有以下字段:
images
users
i_id | s_id | u_id | name | filename |
u_id是表中u_id字段的外键users,其中包含以下字段:
u_id
u_id | username | password | email |
我正在运行这样的查询:
SELECT s_id, u_id, name, filename, filesize FROM images WHERE name = 'fYhWId'
u_id除其他事项外,这将返回用户的。但是我想返回用户的用户名,而不是他们的u_id。因此,基本上,在该SELECT语句中,我还想运行:
SELECT username FROM users WHERE u_id = 1
我可以为此使用两个查询,但是我试图减少我的应用程序运行的查询,而且我知道有一种方法可以将其组合成一个查询,但是我只是不知道:<
有人知道答案吗?谢谢!
SELECT username FROM users WHERE u_id = (SELECT TOP 1 u_id FROM images WHERE name = 'fYhWId')
或者
SELECT username FROM users WHERE u_id IN (SELECT u_id FROM images WHERE name = 'fYhWId')
SELECT username, s_id, images.u_id, name, filename, filesize FROM images INNER JOIN users on images.u_id = users.u_id WHERE name = 'fYhWId'