簡體   English   中英

使用和的嵌套sql語句

[英]nested sql statement using and

如何使它在mysql中工作?

選擇來自維多利亞州的ID,COM​​PANY_NAME,contact1,SUBURB,CATEGORY,PHONE(城市(從所有郊區中選擇郊區)),CATEGORY =“銀行”

下面的語句有效:從城市所在的維多利亞州選擇ID,COM​​PANY_NAME,contact1,SUBURB,CATEGORY,PHONE(從所有郊區中選擇郊區)

如果我加上“和”,它給我一個空的結果集,謝謝

了解聯接的工作方式。

select 
  v.ID,v.COMPANY_NAME,v.contact1,v.SUBURB,v.CATEGORY,v.PHONE 
from
  Victoria v
  inner join allsuburbs s on s.suburb = v.city 
where 
  v.CATEGORY='Banks'

除此之外,您的查詢沒有任何意義。

  • 您的表名為Victoria ,但其中包含一個名為city ?!的字段。 您的其他城市也有自己的桌子嗎?
  • 您有一個名為allsuburbs的表,但您的條件是即使存在一個名為Victoria.suburb的字段, Victoria.city等於allsuburbs.suburb嗎? 那么, Victoria.suburb是什么?
  • 您的表名為allsuburbs 您是否還有另一張包含郊區的表格,或者這是您唯一的一張嗎? 如果只有您一個,那么這個名稱就多余了。
  • 您有一個字段contact1 您是否還有contact2 ... contact10 錯誤的數據庫設計。
  • 為什么您的半數域名全都用大寫而不是大寫(或全都不用)?

哦,SQL的常用格式是:大寫的SQL關鍵字,大小寫混合的字段名等。 更容易閱讀。

我認為您可能放錯了括號?

.. PHONE from Victoria where 
(city in ( select suburb from allsuburbs)) and CATEGORY='Banks'

我猜應該是:

.. PHONE from Victoria where 
city in ( select suburb from allsuburbs) and CATEGORY='Banks'

不知道這是否更有意義,但是我認為第一種情況不是好的SQL語句。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM