1

私の問題は、いくつかのイベントでは会場データがまったくないように見えることです..たとえば、このイベント(コード):

SELECT 名前、場所、出席者数、会場、eid FROM イベント WHERE eid = '447067818737101'

これをコードに追加しても結果が表示されるように、会場データが存在しないイベントを検索することはできますか?

SELECT 名前、場所、出席者数、会場、eid FROM イベント WHERE eid = '447067818737101' AND 会場.都市 = NULL OR 会場.都市 = ""

私の目標は、多くのイベント結果から、最終的なコードにvenue.cityデータのないものだけを選択することです!

更新: 会場データが利用できないイベントで問題が発生する可能性がある人のための解決策: strlen(venue.city) = 0 、会場構造体に都市がない場合、単純に長さゼロの文字列に等しく、これは他の欠落している会場でも確実に機能します要素。

4

1 に答える 1

0

問題は AND および OR 演算子の使用にあると思います。AND 演算子は OR 演算子よりも優先されることを知っておく必要があります。したがって、クエリは次のように実行されます。

SELECT name, location, attending_count, venue, eid FROM event WHERE (eid = '447067818737101' AND venue.city = NULL) OR venue.city = ""

代わりに、次を試すことができます。

SELECT name, location, attending_count, venue, eid FROM event WHERE eid = '447067818737101' AND venue.city IS NULL

于 2013-11-09T01:59:14.547 に答える